<?xml version="1.0"?>
<doc>
    <assembly>
        <name>Castle.Facilities.NHibernateIntegration</name>
    </assembly>
    <members>
        <member name="T:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException">
            <summary>
            Summary description for DataException.
            </summary>
            <remarks>
            Contributed by Steve Degosserie &lt;steve.degosserie@vn.netika.com&gt;
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException.#ctor(System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException"/> class.
            </summary>
            <param name="message">The message.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException.#ctor(System.String,System.Exception)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException"/> class.
            </summary>
            <param name="message">The message.</param>
            <param name="inner">The inner.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Components.Dao.DataException"/> class.
            </summary>
            <param name="info">The object that holds the serialized object data.</param>
            <param name="context">The contextual information about the source or destination.</param>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao">
            <summary>
            Summary description for IGenericDao.
            </summary>
            <remarks>
            Contributed by Steve Degosserie &lt;steve.degosserie@vn.netika.com&gt;
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.FindAll(System.Type)">
            <summary>
            Returns all instances found for the specified type.
            </summary>
            <param name="type">The target type.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.FindAll(System.Type,System.Int32,System.Int32)">
            <summary>
            Returns a portion of the query results (sliced)
            </summary>
            <param name="type">The target type.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.FindById(System.Type,System.Object)">
            <summary>
            Finds an object instance by an unique ID
            </summary>
            <param name="type">The AR subclass type</param>
            <param name="id">ID value</param>
            <returns>The object instance.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.Create(System.Object)">
            <summary>
            Creates (Saves) a new instance to the database.
            </summary>
            <param name="instance">The instance to be created on the database</param>
            <returns>The instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.Update(System.Object)">
            <summary>
            Persists the modification on the instance
            state to the database.
            </summary>
            <param name="instance">The instance to be updated on the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.Delete(System.Object)">
            <summary>
            Deletes the instance from the database.
            </summary>
            <param name="instance">The instance to be deleted from the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.DeleteAll(System.Type)">
            <summary>
            Deletes all rows for the specified type
            </summary>
            <param name="type">type on which the rows on the database should be deleted</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.Save(System.Object)">
            <summary>
            Saves the instance to the database. If the primary key is unitialized
            it creates the instance on the database. Otherwise it updates it.
            <para>
            If the primary key is assigned, then you must invoke <see cref="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.Create(System.Object)"/>
            or <see cref="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.Update(System.Object)"/> instead.
            </para>
            </summary>
            <param name="instance">The instance to be saved</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.FindAllStateless(System.Type)">
            <summary>
            Returns all instances found for the specified type using IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.FindAllStateless(System.Type,System.Int32,System.Int32)">
            <summary>
            Returns a portion of the query results (sliced) using IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.FindByIdStateless(System.Type,System.Object)">
            <summary>
            Finds an object instance by an unique ID using IStatelessSession.
            </summary>
            <param name="type">The AR subclass type</param>
            <param name="id">ID value</param>
            <returns>The object instance.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.CreateStateless(System.Object)">
            <summary>
            Creates (saves or inserts) a new instance to the database using IStatelessSession.
            </summary>
            <param name="instance">The instance to be created on the database</param>
            <returns>The instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.UpdateStateless(System.Object)">
            <summary>
            Persists the modification on the instance state to the database using IStatelessSession.
            </summary>
            <param name="instance">The instance to be updated on the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.DeleteStateless(System.Object)">
            <summary>
            Deletes the instance from the database using IStatelessSession.
            </summary>
            <param name="instance">The instance to be deleted from the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.IGenericDao.DeleteAllStateless(System.Type)">
            <summary>
            Deletes all rows for the specified type using IStatelessSession.
            </summary>
            <param name="type">type on which the rows on the database should be deleted</param>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao">
            <summary>
            Summary description for INHibernateGenericDao.
            </summary>
            <remarks>
            Contributed by Steve Degosserie &lt;steve.degosserie@vn.netika.com&gt;
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[])">
            <summary>
            Returns all instances found for the specified type 
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type 
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[])">
            <summary>
            Returns all instances found for the specified type 
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type 
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithCustomQuery(System.String)">
            <summary>
            Finds all with custom query.
            </summary>
            <param name="queryString">The query string.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithCustomQuery(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with custom HQL query.
            </summary>
            <param name="queryString">The query string.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithNamedQuery(System.String)">
            <summary>
            Finds all with named HQL query.
            </summary>
            <param name="namedQuery">The named query.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithNamedQuery(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with named HQL query.
            </summary>
            <param name="namedQuery">The named query.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.InitializeLazyProperties(System.Object)">
            <summary>
            Initializes the lazy properties.
            </summary>
            <param name="instance">The instance.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.InitializeLazyProperty(System.Object,System.String)">
            <summary>
            Initializes the lazy property.
            </summary>
            <param name="instance">The instance.</param>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[])">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[])">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithCustomQueryStateless(System.String)">
            <summary>
            Finds all with custom query using IStatelessSession.
            </summary>
            <param name="queryString">The query string.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithCustomQueryStateless(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with custom HQL query using IStatelessSession.
            </summary>
            <param name="queryString">The query string.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithNamedQueryStateless(System.String)">
            <summary>
            Finds all with named HQL query using IStatelessSession.
            </summary>
            <param name="namedQuery">The named query.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.INHibernateGenericDao.FindAllWithNamedQueryStateless(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with named HQL query using IStatelessSession.
            </summary>
            <param name="namedQuery">The named query.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao">
            <summary>
            Summary description for GenericDao.
            </summary>
            <remarks>
            Contributed by Steve Degosserie &lt;steve.degosserie@vn.netika.com&gt;
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.#ctor(Castle.Facilities.NHibernateIntegration.ISessionManager)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao"/> class.
            </summary>
            <param name="sessionManager">The session manager.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.#ctor(Castle.Facilities.NHibernateIntegration.ISessionManager,System.String)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao"/> class.
            </summary>
            <param name="sessionManager">The session manager.</param>
            <param name="sessionFactoryAlias">The session factory alias.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAll(System.Type)">
            <summary>
            Returns all instances found for the specified type.
            </summary>
            <param name="type">The target type.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAll(System.Type,System.Int32,System.Int32)">
            <summary>
            Returns a portion of the query results (sliced)
            </summary>
            <param name="type">The target type.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindById(System.Type,System.Object)">
            <summary>
            Finds an object instance by an unique ID
            </summary>
            <param name="type">The AR subclass type</param>
            <param name="id">ID value</param>
            <returns>The object instance.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.Create(System.Object)">
            <summary>
            Creates (Saves) a new instance to the database.
            </summary>
            <param name="instance">The instance to be created on the database</param>
            <returns>The instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.Update(System.Object)">
            <summary>
            Persists the modification on the instance
            state to the database.
            </summary>
            <param name="instance">The instance to be updated on the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.Delete(System.Object)">
            <summary>
            Deletes the instance from the database.
            </summary>
            <param name="instance">The instance to be deleted from the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.DeleteAll(System.Type)">
            <summary>
            Deletes all rows for the specified type
            </summary>
            <param name="type">type on which the rows on the database should be deleted</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.Save(System.Object)">
            <summary>
            Saves the instance to the database. If the primary key is unitialized
            it creates the instance on the database. Otherwise it updates it.
            <para>
            If the primary key is assigned, then you must invoke <see cref="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.Create(System.Object)"/>
            or <see cref="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.Update(System.Object)"/> instead.
            </para>
            </summary>
            <param name="instance">The instance to be saved</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllStateless(System.Type)">
            <summary>
            Returns all instances found for the specified type using IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllStateless(System.Type,System.Int32,System.Int32)">
            <summary>
            Returns a portion of the query results (sliced) using IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindByIdStateless(System.Type,System.Object)">
            <summary>
            Finds an object instance by an unique ID using IStatelessSession.
            </summary>
            <param name="type">The AR subclass type</param>
            <param name="id">ID value</param>
            <returns>The object instance.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.CreateStateless(System.Object)">
            <summary>
            Creates (saves or inserts) a new instance to the database using IStatelessSession.
            </summary>
            <param name="instance">The instance to be created on the database</param>
            <returns>The instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.UpdateStateless(System.Object)">
            <summary>
            Persists the modification on the instance state to the database using IStatelessSession.
            </summary>
            <param name="instance">The instance to be updated on the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.DeleteStateless(System.Object)">
            <summary>
            Deletes the instance from the database using IStatelessSession.
            </summary>
            <param name="instance">The instance to be deleted from the database</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.DeleteAllStateless(System.Type)">
            <summary>
            Deletes all rows for the specified type using IStatelessSession.
            </summary>
            <param name="type">type on which the rows on the database should be deleted</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[])">
            <summary>
            Returns all instances found for the specified type
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[])">
            <summary>
            Returns all instances found for the specified type
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAll(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type
            using criteria.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithCustomQuery(System.String)">
            <summary>
            Finds all with custom query.
            </summary>
            <param name="queryString">The query string.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithCustomQuery(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with custom HQL query.
            </summary>
            <param name="queryString">The query string.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithNamedQuery(System.String)">
            <summary>
            Finds all with named HQL query.
            </summary>
            <param name="namedQuery">The named query.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithNamedQuery(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with named HQL query.
            </summary>
            <param name="namedQuery">The named query.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.InitializeLazyProperties(System.Object)">
            <summary>
            Initializes the lazy properties.
            </summary>
            <param name="instance">The instance.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.InitializeLazyProperty(System.Object,System.String)">
            <summary>
            Initializes the lazy property.
            </summary>
            <param name="instance">The instance.</param>
            <param name="propertyName">Name of the property.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[])">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[])">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllStateless(System.Type,NHibernate.Criterion.ICriterion[],NHibernate.Criterion.Order[],System.Int32,System.Int32)">
            <summary>
            Returns all instances found for the specified type
            using criteria and IStatelessSession.
            </summary>
            <param name="type">The target type.</param>
            <param name="criterias">The criteria expression</param>
            <param name="sortItems">An <see cref="T:System.Array"/> of <see cref="T:NHibernate.Criterion.Order"/> objects.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns>The <see cref="T:System.Array"/> of results.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithCustomQueryStateless(System.String)">
            <summary>
            Finds all with custom query using IStatelessSession.
            </summary>
            <param name="queryString">The query string.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithCustomQueryStateless(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with custom HQL query using IStatelessSession.
            </summary>
            <param name="queryString">The query string.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithNamedQueryStateless(System.String)">
            <summary>
            Finds all with named HQL query using IStatelessSession.
            </summary>
            <param name="namedQuery">The named query.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.FindAllWithNamedQueryStateless(System.String,System.Int32,System.Int32)">
            <summary>
            Finds all with named HQL query using IStatelessSession.
            </summary>
            <param name="namedQuery">The named query.</param>
            <param name="firstRow">The number of the first row to retrieve.</param>
            <param name="maxRows">The maximum number of results retrieved.</param>
            <returns></returns>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.SessionManager">
            <summary>
            Gets the session manager.
            </summary>
            <value>The session manager.</value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Components.Dao.NHibernateGenericDao.SessionFactoryAlias">
            <summary>
            Gets or sets the session factory alias.
            </summary>
            <value>The session factory alias.</value>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Components.Web.SessionWebModule">
            <summary>
            HttpModule to set up a session for the request lifetime.
            <seealso cref="T:Castle.Facilities.NHibernateIntegration.ISessionManager"/>
            </summary>
            <remarks>
            To install the module, you must:
            <para>
               <list type="number">
                 <item>
                   <description>
                   Add the module to the <c>httpModules</c> configuration section within <c>system.web</c>
                   </description>
                 </item>
                 <item>
                   <description>Extend the <see cref="T:System.Web.HttpApplication"/> if you haven't</description>
                 </item>
                 <item>
                   <description>Make your <c>HttpApplication</c> subclass implement
                   <see cref="T:Castle.Windsor.IContainerAccessor"/> so the module can access the container instance</description>
                 </item>
               </list>
            </para>
            </remarks>
        </member>
        <member name="F:Castle.Facilities.NHibernateIntegration.Components.Web.SessionWebModule.SessionKey">
            <summary>
            
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Web.SessionWebModule.Init(System.Web.HttpApplication)">
            <summary>
            Initializes a module and prepares it to handle requests.
            </summary>
            <param name="app">The app.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Components.Web.SessionWebModule.Dispose">
            <summary>
            Disposes of the resources (other than memory) used by the module that implements <see cref="T:System.Web.IHttpModule"/>.
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.NHSessionAwareAttribute">
            <summary>
            Tells to the facility that the class needs a valie Session.
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.NHSessionRequiredAttribute">
            <summary>
            Mark the methods that needs a Session
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.NHSessionComponentInspector">
            <summary>
            Inspect components searching for Session Aware services.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.NHSessionComponentInspector.ProcessModel(Castle.MicroKernel.IKernel,Castle.Core.ComponentModel)">
            <summary>
            Process the model
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.NHSessionInterceptor">
            <summary>
            Interceptor in charge o the automatic session management.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.NHSessionInterceptor.#ctor(Castle.Facilities.NHibernateIntegration.ISessionManager)">
            <summary>
            Constructor
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.NHSessionInterceptor.SetInterceptedComponentModel(Castle.Core.ComponentModel)">
            <summary>
            Sets the intercepted component's ComponentModel.
            </summary>
            <param name="target">The target's ComponentModel</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.NHSessionInterceptor.Intercept(Castle.DynamicProxy.IInvocation)">
            <summary>
            Intercepts the specified invocation and creates a transaction
            if necessary.
            </summary>
            <param name="invocation">The invocation.</param>
            <returns></returns>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Internal.NHSessionInterceptor.Logger">
            <summary>
            Gets or sets the logger.
            </summary>
            <value>The logger.</value>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.StatelessSessionDisposeSynchronization">
            <summary>
            Synchronization to ensure the stateless session disposal on the end of a transaction.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.StatelessSessionDisposeSynchronization.#ctor(Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Internal.StatelessSessionDisposeSynchronization"/> class.
            </summary>
            <param name="session">The session.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.StatelessSessionDisposeSynchronization.BeforeCompletion">
            <summary>
            Implementors may have code executing
            just before the transaction completes
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.StatelessSessionDisposeSynchronization.AfterCompletion">
            <summary>
            Implementors may have code executing
            just after the transaction completes
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate">
            <summary>
            Proxies an IStatelessSession so the user cannot close a stateless session
            which is controlled by a transaction, or, when this is not the case, 
            make sure to remove the session from the storage.
            <seealso cref="T:Castle.Facilities.NHibernateIntegration.ISessionStore"/>
            <seealso cref="T:Castle.Facilities.NHibernateIntegration.ISessionManager"/>
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.#ctor(System.Boolean,NHibernate.IStatelessSession,Castle.Facilities.NHibernateIntegration.ISessionStore)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate"/> class.
            </summary>
            <param name="canClose">if set to <c>true</c> [can close].</param>
            <param name="innerSession">The inner session.</param>
            <param name="sessionStore">The session store.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.BeginTransaction">
            <summary>
            Begin a NHibernate transaction.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Close">
            <summary>
            Close the stateless session and release the ADO.NET connection.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateCriteria``1">
            <summary>
            Create a new <see cref="T:NHibernate.ICriteria"/> instance, for the given entity class,
            or a superclass of an entity class. 
            </summary>
            <typeparam name="T">A class, which is persistent, or has persistent subclasses</typeparam>
            <returns>
            The <see cref="T:NHibernate.ICriteria"/>. 
            </returns>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateCriteria``1(System.String)">
            <summary>
            Create a new <see cref="T:NHibernate.ICriteria"/> instance, for the given entity class,
            or a superclass of an entity class, with the given alias. 
            </summary>
            <typeparam name="T">A class, which is persistent, or has persistent subclasses</typeparam>
            <param name="alias">The alias of the entity</param>
            <returns>
            The <see cref="T:NHibernate.ICriteria"/>. 
            </returns>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateCriteria(System.Type)">
            <summary>
            Create a new <see cref="T:NHibernate.ICriteria"/> instance, for the given entity class,
            or a superclass of an entity class. 
            </summary>
            <param name="entityType">A class, which is persistent, or has persistent subclasses</param>
            <returns>
            The <see cref="T:NHibernate.ICriteria"/>. 
            </returns>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateCriteria(System.Type,System.String)">
            <summary>
            Create a new <see cref="T:NHibernate.ICriteria"/> instance, for the given entity class,
            or a superclass of an entity class, with the given alias. 
            </summary>
            <param name="entityType">A class, which is persistent, or has persistent subclasses</param>
            <param name="alias">The alias of the entity</param>
            <returns>
            The <see cref="T:NHibernate.ICriteria"/>. 
            </returns>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateCriteria(System.String)">
            <summary>
            Create a new <see cref="T:NHibernate.ICriteria"/> instance, for the given entity name.
            </summary>
            <param name="entityName">The entity name. </param>
            <returns>
            The <see cref="T:NHibernate.ICriteria"/>. 
            </returns>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateCriteria(System.String,System.String)">
            <summary>
            Create a new <see cref="T:NHibernate.ICriteria"/> instance, for the given entity name,
            with the given alias.  
            </summary>
            <param name="entityName">The entity name. </param>
            <param name="alias">The alias of the entity</param>
            <returns>
            The <see cref="T:NHibernate.ICriteria"/>. 
            </returns>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateQuery(System.String)">
            <summary>
            Create a new instance of <tt>Query</tt> for the given HQL query string.
            </summary>
            <remarks>
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.CreateSQLQuery(System.String)">
            <summary>
            Create a new instance of <see cref="T:NHibernate.ISQLQuery"/> for the given SQL query string.
            Entities returned by the query are detached.
            </summary>
            <param name="queryString">a SQL query </param>
            <returns>
            The <see cref="T:NHibernate.ISQLQuery"/>
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Delete(System.Object)">
            <summary>
            Delete a entity. 
            </summary>
            <param name="entity">a detached entity instance </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Delete(System.String,System.Object)">
            <summary>
            Delete a entity. 
            </summary>
            <param name="entityName">The entityName for the entity to be deleted </param>
            <param name="entity">a detached entity instance </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Get(System.String,System.Object)">
            <summary>
            Retrieve a entity. 
            </summary>
            <returns>
            a detached entity instance 
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Get``1(System.Object)">
            <summary>
            Retrieve a entity.
            </summary>
            <returns>
            a detached entity instance
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Get(System.String,System.Object,NHibernate.LockMode)">
            <summary>
            Retrieve a entity, obtaining the specified lock mode. 
            </summary>
            <returns>
            a detached entity instance 
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Get``1(System.Object,NHibernate.LockMode)">
            <summary>
            Retrieve a entity, obtaining the specified lock mode. 
            </summary>
            <returns>
            a detached entity instance 
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.GetNamedQuery(System.String)">
            <summary>
            Obtain an instance of <see cref="T:NHibernate.IQuery"/> for a named query string defined in
            the mapping file.
            </summary>
            <remarks>
            The query can be either in <c>HQL</c> or <c>SQL</c> format.
            Entities returned by the query are detached.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Insert(System.Object)">
            <summary>
            Insert a entity.
            </summary>
            <param name="entity">A new transient instance </param>
            <returns>
            the identifier of the instance 
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Insert(System.String,System.Object)">
            <summary>
            Insert a row. 
            </summary>
            <param name="entityName">The entityName for the entity to be inserted </param>
            <param name="entity">a new transient instance </param>
            <returns>
            the identifier of the instance 
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Refresh(System.Object)">
            <summary>
            Refresh the entity instance state from the database. 
            </summary>
            <param name="entity">The entity to be refreshed. </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Refresh(System.String,System.Object)">
            <summary>
            Refresh the entity instance state from the database. 
            </summary>
            <param name="entityName">The entityName for the entity to be refreshed. </param>
            <param name="entity">The entity to be refreshed.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Refresh(System.Object,NHibernate.LockMode)">
            <summary>
            Refresh the entity instance state from the database. 
            </summary>
            <param name="entity">The entity to be refreshed. </param>
            <param name="lockMode">The LockMode to be applied.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Refresh(System.String,System.Object,NHibernate.LockMode)">
            <summary>
            Refresh the entity instance state from the database. 
            </summary>
            <param name="entityName">The entityName for the entity to be refreshed. </param>
            <param name="entity">The entity to be refreshed. </param>
            <param name="lockMode">The LockMode to be applied. </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Update(System.Object)">
            <summary>
            Update a entity.
            </summary>
            <param name="entity">a detached entity instance </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Update(System.String,System.Object)">
            <summary>
            Update a entity.
            </summary>
            <param name="entityName">The entityName for the entity to be updated </param>
            <param name="entity">a detached entity instance </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
            <filterpriority>2</filterpriority>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.DoClose(System.Boolean)">
            <summary>
            Does the close.
            </summary>
            <param name="closing">if set to <c>true</c> [closing].</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.AreEqual(NHibernate.IStatelessSession,NHibernate.IStatelessSession)">
            <summary>
            Returns <see langword="true"/> if the supplied stateless sessions are equal, <see langword="false"/> otherwise.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns></returns>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.InnerSession">
            <summary>
            Gets the inner session.
            </summary>
            <value>The inner session.</value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.SessionStoreCookie">
            <summary>
            Gets or sets the session store cookie.
            </summary>
            <value>The session store cookie.</value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Connection">
            <summary>
            Returns the current ADO.NET connection associated with this instance.
            </summary>
            <remarks>
            If the session is using aggressive connection release (as in a
            CMT environment), it is the application's responsibility to
            close the connection returned by this call. Otherwise, the
            application should not close the connection.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate.Transaction">
            <summary>
            Get the current Hibernate transaction.
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection">
            <summary>
            Defines size, enumerators, and synchronization methods for strongly
            typed collections of <see cref="T:System.Reflection.FieldInfo"/> elements.
            </summary>
            <remarks>
            <b>IFieldInfoCollection</b> 
            provides an <see cref="T:System.Collections.ICollection"/> that is strongly typed for 
            <see cref="T:System.Reflection.FieldInfo"/> elements.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.CopyTo(System.Reflection.FieldInfo[],System.Int32)">
            <summary>
            Copies the entire <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/> 
            to a one-dimensional <see cref="T:System.Array"/>
            of <see cref="T:System.Reflection.FieldInfo"/> elements, 
            starting at the specified index of the target array.
            </summary>
            <param name="array">
            The one-dimensional <see cref="T:System.Array"/> that is the destination 
            of the <see cref="T:System.Reflection.FieldInfo"/> elements copied 
            from the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.
            The <b>Array</b> must have zero-based indexing.</param>
            <param name="arrayIndex">
            The zero-based index in <paramref name="array"/>
            at which copying begins.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <paramref name="arrayIndex"/> is less than zero.</exception>
            <exception cref="T:System.ArgumentException"><para>
            <paramref name="arrayIndex"/> is equal to or 
            greater than the length of <paramref name="array"/>.
            </para><para>-or-</para><para>
            The number of elements in the source 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/> is greater
            than the available space from <paramref name="arrayIndex"/> 
            to the end of the destination <paramref name="array"/>.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ICollection.CopyTo(System.Array,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.GetEnumerator">
            <summary>
            Returns an <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator"/> that can
            iterate through the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.
            </summary>
            <returns>
            An <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator"/> for the entire 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.</returns>
            <remarks>
            Please refer to 
            <see cref="M:System.Collections.IEnumerable.GetEnumerator"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.Count">
            <summary>
            Gets the number of elements contained in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.
            </summary>
            <value>
            The number of elements contained in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.
            </value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ICollection.Count"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.IsSynchronized">
            <summary>
            Gets a value indicating whether access to the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/> 
            is synchronized (thread-safe).
            </summary>
            <value>
            <c>true</c> if access to the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/> 
            is synchronized (thread-safe); otherwise, <c>false</c>. 
            The default is <c>false</c>.</value>
            <remarks>
            Please refer to 
            <see cref="P:System.Collections.ICollection.IsSynchronized"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.SyncRoot">
            <summary>
            Gets an object that can be used to synchronize access to the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.
            </summary>
            <value>
            An object that can be used to synchronize access to the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection"/>.
            </value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ICollection.SyncRoot"/> for details.
            </remarks>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList">
            <summary>
            Represents a strongly typed collection 
            of <see cref="T:System.Reflection.FieldInfo"/> objects 
            that can be individually accessed by index.
            </summary>
            <remarks>
            <b>IFieldInfoList</b> 
            provides an <see cref="T:System.Collections.IList"/> that is strongly typed for 
            <see cref="T:System.Reflection.FieldInfo"/> elements.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.Add(System.Reflection.FieldInfo)">
            <summary>
            Adds a <see cref="T:System.Reflection.FieldInfo"/> to the end 
            of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to be added 
            to the end of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> index at which 
            the <paramref name="value"/> has been added.</returns>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.
            </para><para>-or-</para><para>
            The <b>IFieldInfoList</b> has a fixed size.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.Add(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.Clear">
            <summary>
            Removes all elements from the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            </summary>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.
            </para><para>-or-</para><para>
            The <b>IFieldInfoList</b> has a fixed size.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.Clear"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.Contains(System.Reflection.FieldInfo)">
            <summary>
            Determines whether the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>
            contains the specified <see cref="T:System.Reflection.FieldInfo"/> element.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to locate 
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            This argument may be a null reference.
            </param>
            <returns>
            <c>true</c> if <paramref name="value"/> is found in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>; otherwise, <c>false</c>.
            </returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.Contains(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.IndexOf(System.Reflection.FieldInfo)">
            <summary>
            Returns the zero-based index of the first occurrence 
            of the specified <see cref="T:System.Reflection.FieldInfo"/> 
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to locate 
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The zero-based index of the first occurrence of the specified 
            <paramref name="value"/> in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>, 
            if found; otherwise, -1.</returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.IndexOf(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.Insert(System.Int32,System.Reflection.FieldInfo)">
            <summary>
            Inserts a <see cref="T:System.Reflection.FieldInfo"/> element into the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> at the specified index.
            </summary>
            <param name="index">
            The zero-based index at which 
            <paramref name="value"/> should be inserted.</param>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to insert 
            into the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            This argument may be a null reference.
            </param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="index"/> is greater than
            <see cref="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.Count"/>.</para>
            </exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.
            </para><para>-or-</para><para>
            The <b>IFieldInfoList</b> has a fixed size.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.Insert(System.Int32,System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.Remove(System.Reflection.FieldInfo)">
            <summary>
            Removes the first occurrence of the specified 
            <see cref="T:System.Reflection.FieldInfo"/> from the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to remove 
            from the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            This argument may be a null reference.
            </param>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.
            </para><para>-or-</para><para>
            The <b>IFieldInfoList</b> has a fixed size.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.Remove(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.RemoveAt(System.Int32)">
            <summary>
            Removes the element at the specified index of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/>.
            </summary>
            <param name="index">
            The zero-based index of the element to remove.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="index"/> is equal to or greater than
            <see cref="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.Count"/>.</para>
            </exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.
            </para><para>-or-</para><para>
            The <b>IFieldInfoList</b> has a fixed size.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IList.RemoveAt(System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.IsFixedSize">
            <summary>
            Gets a value indicating whether the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> has a fixed size.
            </summary>
            <value>
            <c>true</c> if the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> 
            has a fixed size; otherwise, <c>false</c>. 
            The default is <c>false</c>.</value>
            <remarks>
            Please refer to <see cref="P:System.Collections.IList.IsFixedSize"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.IsReadOnly">
            <summary>
            Gets a value indicating whether the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.
            </summary>
            <value>
            <c>true</c> if the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> 
            is read-only; otherwise, <c>false</c>. 
            The default is <c>false</c>.</value>
            <remarks>
            Please refer to <see cref="P:System.Collections.IList.IsReadOnly"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList.Item(System.Int32)">
            <summary>
            Gets or sets the <see cref="T:System.Reflection.FieldInfo"/> 
            element at the specified index.
            </summary>
            <param name="index">
            The zero-based index of the <see cref="T:System.Reflection.FieldInfo"/> 
            element to get or set.</param>
            <value>
            The <see cref="T:System.Reflection.FieldInfo"/> element 
            at the specified <paramref name="index"/>.
            </value>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="index"/> is equal to or greater than
            <see cref="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoCollection.Count"/>.</para>
            </exception>
            <exception cref="T:System.NotSupportedException">
            The property is set, and the 
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoList"/> is read-only.</exception>
            <remarks>
            Please refer to <see cref="P:System.Collections.IList.Item(System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator">
            <summary>
            Supports type-safe iteration over a collection that contains 
            <see cref="T:System.Reflection.FieldInfo"/> elements.
            </summary>
            <remarks>
            <b>IFieldInfoEnumerator</b> 
            provides an <see cref="T:System.Collections.IEnumerator"/> that is strongly typed for 
            <see cref="T:System.Reflection.FieldInfo"/> elements.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator.MoveNext">
            <summary>
            Advances the enumerator to the next element of the collection.
            </summary>
            <returns>
            <c>true</c> if the enumerator was successfully advanced 
            to the next element; <c>false</c> if the enumerator has 
            passed the end of the collection.</returns>
            <exception cref="T:System.InvalidOperationException">
            The collection was modified after the enumerator was created.
            </exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IEnumerator.MoveNext"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator.Reset">
            <summary>
            Sets the enumerator to its initial position,
            which is before the first element in the collection.
            </summary>
            <exception cref="T:System.InvalidOperationException">
            The collection was modified after the enumerator was created.
            </exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.IEnumerator.Reset"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator.Current">
            <summary>
            Gets the current <see cref="T:System.Reflection.FieldInfo"/> 
            element in the collection.
            </summary>
            <value>
            The current <see cref="T:System.Reflection.FieldInfo"/> 
            element in the collection.</value>
            <exception cref="T:System.InvalidOperationException"><para>
            The enumerator is positioned before the first element 
            of the collection or after the last element.
            </para><para>-or-</para><para>
            The collection was modified after the enumerator was created.
            </para></exception>
            <remarks>
            Please refer to <see cref="P:System.Collections.IEnumerator.Current"/> for details, 
            but note that <b>Current</b> fails if the collection was modified 
            since the last successful call to <see cref="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator.MoveNext"/> or 
            <see cref="M:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator.Reset"/>.
            </remarks>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection">
            <summary>
            Implements a strongly typed collection
            of <see cref="T:System.Reflection.FieldInfo"/> elements.
            </summary>
            <remarks><para>
            <b>FieldInfoCollection</b>
            provides an <see cref="T:System.Collections.ArrayList"/> that is strongly typed for
            <see cref="T:System.Reflection.FieldInfo"/> elements.
            </para><para>
            The <see cref="P:System.Reflection.MemberInfo.Name"/> property
            of the <see cref="T:System.Reflection.FieldInfo"/> class can be used as a key
            to locate elements in the <b>FieldInfoCollection</b>.
            </para><para>
            The collection may contain multiple identical keys. All key access
            methods return the first occurrence of the specified key, if found.
            Access by key is an O(<em>N</em>) operation, where <em>N</em> is the
            current value of the <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/> property.
            </para></remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.#ctor(Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Data)">
            <summary>
            Initializes a new instance of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> class
            with the specified data container.
            </summary>
            <param name="data">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Data"/> object to share with another instance.
            </param>
            <remarks>
            This constructor is used to create read-only wrappers.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.#ctor">
            <overloads>
            Initializes a new instance of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> class.
            </overloads>
            <summary>
            Initializes a new instance of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> class
            that is empty and has the default initial capacity.
            </summary>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.#ctor"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.#ctor(System.Int32)">
            <summary>
            Initializes a new instance of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> class
            that is empty and has the specified initial capacity.
            </summary>
            <param name="capacity">
            The initial number of elements that the new
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> can contain.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <paramref name="capacity"/> is less than zero.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.#ctor(System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.#ctor(Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection)">
            <summary>
            Initializes a new instance of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> class that
            contains elements copied from the specified collection and that
            has the same initial capacity as the number of elements copied.
            </summary>
            <param name="collection">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            whose elements are copied to the new collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="collection"/> is a null reference.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.#ctor(System.Collections.ICollection)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.#ctor(System.Reflection.FieldInfo[])">
            <summary>
            Initializes a new instance of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> class
            that contains elements copied from the specified
            <see cref="T:System.Reflection.FieldInfo"/> array and that has the
            same initial capacity as the number of elements copied.
            </summary>
            <param name="array">
            An <see cref="T:System.Array"/> of <see cref="T:System.Reflection.FieldInfo"/>
            elements that are copied to the new collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array"/> is a null reference.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.#ctor(System.Collections.ICollection)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Add(System.Reflection.FieldInfo)">
            <summary>
            Adds a <see cref="T:System.Reflection.FieldInfo"/> to the end
            of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to be added
            to the end of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            index at which the <paramref name="value"/> has been added.
            </returns>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.
            </para><para>-or-</para><para>
            The <b>FieldInfoCollection</b>
            already contains <paramref name="value"/>,
            and the <b>FieldInfoCollection</b>
            ensures that all elements are unique.</para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Add(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IList#Add(System.Object)">
            <summary>
            Adds an <see cref="T:System.Object"/> to the end of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="value">
            The object to be added to the end of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>. This argument
            must be compatible with <see cref="T:System.Reflection.FieldInfo"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            index at which the <paramref name="value"/> has been added.
            </returns>
            <exception cref="T:System.InvalidCastException">
            <paramref name="value"/> is not compatible with
            <see cref="T:System.Reflection.FieldInfo"/>.</exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.
            </para><para>-or-</para><para>
            The <b>FieldInfoCollection</b>
            already contains <paramref name="value"/>,
            and the <b>FieldInfoCollection</b>
            ensures that all elements are unique.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Add(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.AddRange(Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection)">
            <overloads>
            Adds a range of elements to the end of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </overloads>
            <summary>
            Adds the elements of another collection to the end of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="collection">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> whose elements
            should be added to the end of the current collection.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="collection"/> is a null reference.</exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.
            </para><para>-or-</para><para>
            The <b>FieldInfoCollection</b> already contains one
            or more elements in <paramref name="collection"/>,
            and the <b>FieldInfoCollection</b>
            ensures that all elements are unique.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.AddRange(System.Collections.ICollection)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.AddRange(System.Reflection.FieldInfo[])">
            <summary>
            Adds the elements of a <see cref="T:System.Reflection.FieldInfo"/> array
            to the end of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="array">
            An <see cref="T:System.Array"/> of <see cref="T:System.Reflection.FieldInfo"/>
            elements that should be added to the end of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array"/> is a null reference.</exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.
            </para><para>-or-</para><para>
            The <b>FieldInfoCollection</b> already contains
            one or more elements in <paramref name="array"/>,
            and the <b>FieldInfoCollection</b>
            ensures that all elements are unique.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.AddRange(System.Collections.ICollection)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.BinarySearch(System.Reflection.FieldInfo,System.Collections.IComparer)">
            <overloads>
            Uses a binary search algorithm to locate a specific element
            in the sorted <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            or a portion of it.
            </overloads>
            <summary>
            Searches the entire sorted <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            for an <see cref="T:System.Reflection.FieldInfo"/> element using the
            specified comparer and returns the zero-based index of the element.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to locate
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <param name="comparer">
            <para>The <see cref="T:System.Collections.IComparer"/> implementation
            to use when comparing elements.</para>
            <para>-or-</para>
            <para>A null reference to use the <see cref="T:System.IComparable"/>
            implementation of each element.</para></param>
            <returns>
            The zero-based index of <paramref name="value"/> in the sorted
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>, if <paramref name="value"/>
            is found; otherwise, a negative number, which is the bitwise
            complement of the index of the next element that is larger than
            <paramref name="value"/> or, if there is no larger element, the
            bitwise complement of <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.</returns>
            <exception cref="T:System.ArgumentException">
            <paramref name="comparer"/> is a null reference,
            and FieldInfo does not implement
            the <see cref="T:System.IComparable"/> interface.</exception>
            <remarks>
            Please refer to
            <see cref="M:System.Collections.ArrayList.BinarySearch(System.Object,System.Collections.IComparer)"/>
            for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.BinarySearch(System.Int32,System.Int32,System.Reflection.FieldInfo,System.Collections.IComparer)">
            <summary>
            Searches a section of the sorted
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> for an
            <see cref="T:System.Reflection.FieldInfo"/> element using the
            specified comparer and returns the zero-based index of the element.
            </summary>
            <param name="index">
            The zero-based starting index of the range of elements to search.
            </param>
            <param name="count">The number of elements to search.</param>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to locate
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <param name="comparer">
            <para>The <see cref="T:System.Collections.IComparer"/> implementation
            to use when comparing elements.</para>
            <para>-or-</para>
            <para>A null reference to use the <see cref="T:System.IComparable"/>
            implementation of each element.</para></param>
            <returns>
            The zero-based index of <paramref name="value"/> in the sorted
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>, if <paramref name="value"/>
            is found; otherwise, a negative number, which is the bitwise
            complement of the index of the next element that is larger than
            <paramref name="value"/> or, if there is no larger element, the
            bitwise complement of <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.</returns>
            <exception cref="T:System.ArgumentException"><para>
            <paramref name="index"/> and <paramref name="count"/>
            do not denote a valid range of elements in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </para><para>-or-</para><para>
            <paramref name="comparer"/> is a null reference,
            and FieldInfo does not implement
            the <see cref="T:System.IComparable"/> interface.
            </para></exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="count"/> is less than zero.</para>
            </exception>
            <remarks>
            Please refer to
            <see cref="M:System.Collections.ArrayList.BinarySearch(System.Int32,System.Int32,System.Object,System.Collections.IComparer)"/>
            for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Clear">
            <summary>
            Removes all elements from the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Clear"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Clone">
            <summary>
            Creates a shallow copy of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <returns>
            A shallow copy of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Clone"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Contains(System.Reflection.FieldInfo)">
            <summary>
            Determines whether the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            contains the specified <see cref="T:System.Reflection.FieldInfo"/> element.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to locate
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <returns>
            <c>true</c> if <paramref name="value"/> is found in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>; otherwise, <c>false</c>.
            </returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Contains(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IList#Contains(System.Object)">
            <summary>
            Determines whether the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            contains the specified element.
            </summary>
            <param name="value">
            The object to locate in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>. This argument
            must be compatible with <see cref="T:System.Reflection.FieldInfo"/>.
            This argument may be a null reference.
            </param>
            <returns>
            <c>true</c> if <paramref name="value"/> is found in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>; otherwise, <c>false</c>.
            </returns>
            <exception cref="T:System.InvalidCastException">
            <paramref name="value"/> is not compatible with
            <see cref="T:System.Reflection.FieldInfo"/>.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Contains(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.ContainsKey(System.String)">
            <summary>
            Determines whether the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> contains
            the specified <see cref="P:System.Reflection.MemberInfo.Name"/> value.
            </summary>
            <param name="key">
            The <see cref="P:System.Reflection.MemberInfo.Name"/> value to locate
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <returns>
            <c>true</c> if <paramref name="key"/> is found in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>; otherwise, <c>false</c>.
            </returns>
            <remarks>
            <b>ContainsKey</b> is similar to <see cref="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Contains(System.Reflection.FieldInfo)"/> but
            compares the specified <paramref name="key"/> to the value
            of the <see cref="P:System.Reflection.MemberInfo.Name"/> property
            of each <see cref="T:System.Reflection.FieldInfo"/> element, rather than
            to the element itself.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.CopyTo(System.Reflection.FieldInfo[])">
            <overloads>
            Copies the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            or a portion of it to a one-dimensional array.
            </overloads>
            <summary>
            Copies the entire <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            to a one-dimensional <see cref="T:System.Array"/>
            of <see cref="T:System.Reflection.FieldInfo"/> elements,
            starting at the beginning of the target array.
            </summary>
            <param name="array">
            The one-dimensional <see cref="T:System.Array"/> that is the destination
            of the <see cref="T:System.Reflection.FieldInfo"/> elements copied from the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            The <b>Array</b> must have zero-based indexing.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentException">
            The number of elements in the source
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is greater than
            the available space in the destination <paramref name="array"/>.
            </exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.CopyTo(System.Int32,System.Array,System.Int32,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.CopyTo(System.Reflection.FieldInfo[],System.Int32)">
            <summary>
            Copies the entire <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            to a one-dimensional <see cref="T:System.Array"/>
            of <see cref="T:System.Reflection.FieldInfo"/> elements,
            starting at the specified index of the target array.
            </summary>
            <param name="array">
            The one-dimensional <see cref="T:System.Array"/> that is the destination
            of the <see cref="T:System.Reflection.FieldInfo"/> elements copied from the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            The <b>Array</b> must have zero-based indexing.</param>
            <param name="arrayIndex">
            The zero-based index in <paramref name="array"/>
            at which copying begins.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <paramref name="arrayIndex"/> is less than zero.</exception>
            <exception cref="T:System.ArgumentException"><para>
            <paramref name="arrayIndex"/> is equal to or
            greater than the length of <paramref name="array"/>.
            </para><para>-or-</para><para>
            The number of elements in the source
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is greater
            than the available space from <paramref name="arrayIndex"/>
            to the end of the destination <paramref name="array"/>.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.CopyTo(System.Int32,System.Array,System.Int32,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#ICollection#CopyTo(System.Array,System.Int32)">
            <summary>
            Copies the entire <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            to a one-dimensional <see cref="T:System.Array"/>,
            starting at the specified index of the target array.
            </summary>
            <param name="array">
            The one-dimensional <see cref="T:System.Array"/> that is the destination
            of the <see cref="T:System.Reflection.FieldInfo"/> elements copied from the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            The <b>Array</b> must have zero-based indexing.</param>
            <param name="arrayIndex">
            The zero-based index in <paramref name="array"/>
            at which copying begins.</param>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="array"/> is a null reference.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <paramref name="arrayIndex"/> is less than zero.</exception>
            <exception cref="T:System.ArgumentException"><para>
            <paramref name="array"/> is multidimensional.
            </para><para>-or-</para><para>
            <paramref name="arrayIndex"/> is equal to or
            greater than the length of <paramref name="array"/>.
            </para><para>-or-</para><para>
            The number of elements in the source
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is greater
            than the available space from <paramref name="arrayIndex"/>
            to the end of the destination <paramref name="array"/>.
            </para></exception>
            <exception cref="T:System.InvalidCastException">
            <see cref="T:System.Reflection.FieldInfo"/>
            cannot be cast automatically to the type of the destination
            <paramref name="array"/>.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.CopyTo(System.Int32,System.Array,System.Int32,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.GetByKey(System.String)">
            <summary>
            Gets the <see cref="T:System.Reflection.FieldInfo"/> element
            associated with the first occurrence of the specified
            <see cref="P:System.Reflection.MemberInfo.Name"/> value.
            </summary>
            <param name="key">
            The <see cref="P:System.Reflection.MemberInfo.Name"/>
            value whose element to get.
            This argument may be a null reference.
            </param>
            <returns>
            The <see cref="T:System.Reflection.FieldInfo"/> element associated
            with the first occurrence of the specified
            <paramref name="key"/>, if found; otherwise,
            a null reference.
            </returns>
            <remarks>
            <b>GetByKey</b> compares the specified <paramref name="key"/>
            to the value of the <see cref="P:System.Reflection.MemberInfo.Name"/>
            property of each <see cref="T:System.Reflection.FieldInfo"/> element,
            and returns the first matching element.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.GetEnumerator">
            <summary>
            Returns an <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator"/> that can
            iterate through the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <returns>
            An <see cref="T:Castle.Facilities.NHibernateIntegration.Util.IFieldInfoEnumerator"/> for the entire
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.GetEnumerator"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IEnumerable#GetEnumerator">
            <summary>
            Returns an <see cref="T:System.Collections.IEnumerator"/> that can iterate through the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <returns>
            An <see cref="T:System.Collections.IEnumerator"/> for the entire
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.GetEnumerator"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IndexOf(System.Reflection.FieldInfo)">
            <summary>
            Returns the zero-based index of the first occurrence
            of the specified <see cref="T:System.Reflection.FieldInfo"/> in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object
            to locate in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The zero-based index of the first occurrence of
            <paramref name="value"/> in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>,
            if found; otherwise, -1.</returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.IndexOf(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IList#IndexOf(System.Object)">
            <summary>
            Returns the zero-based index of the first occurrence
            of the specified <see cref="T:System.Object"/> in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="value">
            The object to locate in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument must be compatible with <see cref="T:System.Reflection.FieldInfo"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The zero-based index of the first occurrence of
            <paramref name="value"/> in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>,
            if found; otherwise, -1.</returns>
            <exception cref="T:System.InvalidCastException">
            <paramref name="value"/> is not compatible with
            <see cref="T:System.Reflection.FieldInfo"/>.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.IndexOf(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IndexOfKey(System.String)">
            <summary>
            Returns the zero-based index of the first occurrence of the
            specified <see cref="P:System.Reflection.MemberInfo.Name"/> value
            in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="key">
            The <see cref="P:System.Reflection.MemberInfo.Name"/> value
            to locate in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <returns>
            The zero-based index of the first occurrence of
            <paramref name="key"/> in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>,
            if found; otherwise, -1.</returns>
            <remarks>
            <b>IndexOfKey</b> is similar to <see cref="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IndexOf(System.Reflection.FieldInfo)"/> but
            compares  the specified <paramref name="key"/> to the value
            of the <see cref="P:System.Reflection.MemberInfo.Name"/> property
            of each <see cref="T:System.Reflection.FieldInfo"/> element, rather than
            to the element itself.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Insert(System.Int32,System.Reflection.FieldInfo)">
            <summary>
            Inserts a <see cref="T:System.Reflection.FieldInfo"/> element into the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> at the specified index.
            </summary>
            <param name="index">
            The zero-based index at which <paramref name="value"/>
            should be inserted.</param>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to insert
            into the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para><para>
            <paramref name="index"/> is greater than <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.
            </para></exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.
            </para><para>-or-</para><para>
            The <b>FieldInfoCollection</b>
            already contains <paramref name="value"/>,
            and the <b>FieldInfoCollection</b>
            ensures that all elements are unique.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Insert(System.Int32,System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IList#Insert(System.Int32,System.Object)">
            <summary>
            Inserts an element into the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> at the specified index.
            </summary>
            <param name="index">
            The zero-based index at which <paramref name="value"/>
            should be inserted.</param>
            <param name="value">
            The object to insert into the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument must be compatible with <see cref="T:System.Reflection.FieldInfo"/>.
            This argument may be a null reference.
            </param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para><para>
            <paramref name="index"/> is greater than <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.
            </para></exception>
            <exception cref="T:System.InvalidCastException"><paramref name="value"/>
            is not compatible with <see cref="T:System.Reflection.FieldInfo"/>.</exception>
            <exception cref="T:System.NotSupportedException"><para>
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.
            </para><para>-or-</para><para>
            The <b>FieldInfoCollection</b>
            already contains <paramref name="value"/>,
            and the <b>FieldInfoCollection</b>
            ensures that all elements are unique.
            </para></exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Insert(System.Int32,System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.ReadOnly(Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection)">
            <summary>
            Returns a read-only wrapper for the specified
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="collection">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> to wrap.</param>
            <returns>
            A read-only wrapper around <paramref name="collection"/>.
            </returns>
            <exception cref="T:System.ArgumentNullException">
            <paramref name="collection"/> is a null reference.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.ReadOnly(System.Collections.IList)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Remove(System.Reflection.FieldInfo)">
            <summary>
            Removes the first occurrence of the specified
            <see cref="T:System.Reflection.FieldInfo"/> from the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="value">
            The <see cref="T:System.Reflection.FieldInfo"/> object to remove
            from the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            This argument may be a null reference.
            </param>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Remove(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IList#Remove(System.Object)">
            <summary>
            Removes the first occurrence of the specified <see cref="T:System.Object"/>
            from the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="value">
            The object to remove from the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>. This argument
            must be compatible with <see cref="T:System.Reflection.FieldInfo"/>.
            This argument may be a null reference.
            </param>
            <exception cref="T:System.InvalidCastException">
            <paramref name="value"/> is not compatible with
            <see cref="T:System.Reflection.FieldInfo"/>.</exception>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Remove(System.Object)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.RemoveAt(System.Int32)">
            <summary>
            Removes the element at the specified index of the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="index">
            The zero-based index of the element to remove.</param>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="index"/> is equal to or
            greater than <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.</para></exception>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.RemoveAt(System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.RemoveRange(System.Int32,System.Int32)">
            <summary>
            Removes the specified range of elements from the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <param name="index">
            The zero-based starting index of the range of elements to remove.
            </param>
            <param name="count">The number of elements to remove.</param>
            <exception cref="T:System.ArgumentException">
            <paramref name="index"/> and <paramref name="count"/>
            do not denote a valid range of elements in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="count"/> is less than zero.</para>
            </exception>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.RemoveRange(System.Int32,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Reverse">
            <overloads>
            Reverses the order of the elements in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> or a portion of it.
            </overloads>
            <summary>
            Reverses the order of the elements in the entire
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </exception>
            <remarks>
            Please refer to <see cref="M:System.Array.Reverse(System.Array,System.Int32,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Reverse(System.Int32,System.Int32)">
            <summary>
            Reverses the order of the elements in the specified range.
            </summary>
            <param name="index">
            The zero-based starting index of the range of elements to reverse.
            </param>
            <param name="count">The number of elements to reverse.</param>
            <exception cref="T:System.ArgumentException">
            <paramref name="index"/> and <paramref name="count"/>
            do not denote a valid range of elements in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="count"/> is less than zero.</para>
            </exception>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </exception>
            <remarks>
            Please refer to <see cref="M:System.Array.Reverse(System.Array,System.Int32,System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Sort">
            <overloads>
            Sorts the elements in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            or a portion of it.
            </overloads>
            <summary>
            Sorts the elements in the entire <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            using the <see cref="T:System.IComparable"/> implementation of each element.
            </summary>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </exception>
            <exception cref="T:System.InvalidOperationException">
            One or more elements in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            do not implement the <see cref="T:System.IComparable"/> interface.
            </exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.Sort"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Sort(System.Collections.IComparer)">
            <summary>
            Sorts the elements in the entire
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> using the specified comparer.
            </summary>
            <param name="comparer">
            <para>The <see cref="T:System.Collections.IComparer"/> implementation
            to use when comparing elements.</para>
            <para>-or-</para>
            <para>A null reference to use the <see cref="T:System.IComparable"/>
            implementation of each element.</para></param>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </exception>
            <remarks>
            Please refer to
            <see cref="M:System.Collections.ArrayList.Sort(System.Collections.IComparer)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Sort(System.Int32,System.Int32,System.Collections.IComparer)">
            <summary>
            Sorts the elements in the specified range
            using the specified comparer.
            </summary>
            <param name="index">
            The zero-based starting index of the range of elements to sort.
            </param>
            <param name="count">The number of elements to sort.</param>
            <param name="comparer">
            <para>The <see cref="T:System.Collections.IComparer"/> implementation
            to use when comparing elements.</para>
            <para>-or-</para>
            <para>A null reference to use the <see cref="T:System.IComparable"/>
            implementation of each element.</para></param>
            <exception cref="T:System.ArgumentException">
            <paramref name="index"/> and <paramref name="count"/>
            do not denote a valid range of elements in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.</exception>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="count"/> is less than zero.</para>
            </exception>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </exception>
            <remarks>
            Please refer to
            <see cref="M:System.Collections.ArrayList.Sort(System.Int32,System.Int32,System.Collections.IComparer)"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.ToArray">
            <summary>
            Copies the elements of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            to a new <see cref="T:System.Array"/> of
            <see cref="T:System.Reflection.FieldInfo"/> elements.
            </summary>
            <returns>
            A one-dimensional <see cref="T:System.Array"/> of
            <see cref="T:System.Reflection.FieldInfo"/> elements containing copies of the
            elements of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </returns>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.ToArray"/> for details.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.TrimToSize">
            <summary>
            Sets the capacity to the actual number of elements in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <exception cref="T:System.NotSupportedException">
            The <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="M:System.Collections.ArrayList.TrimToSize"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Capacity">
            <summary>
            Gets or sets the capacity of the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <value>
            The number of elements that the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> can contain.
            </value>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <b>Capacity</b> is set to a value that is
            less than <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.</exception>
            <exception cref="T:System.NotSupportedException">
            The property is set, and the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            is read-only or has a fixed size.</exception>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.Capacity"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count">
            <summary>
            Gets the number of elements contained in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <value>
            The number of elements contained in the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.Count"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IsFixedSize">
            <summary>
            Gets a value indicating whether the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> has a fixed size.
            </summary>
            <value>
            <c>true</c> if the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            has a fixed size; otherwise, <c>false</c>.
            The default is <c>false</c>.</value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.IsFixedSize"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IsReadOnly">
            <summary>
            Gets a value indicating whether the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </summary>
            <value>
            <c>true</c> if the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            is read-only; otherwise, <c>false</c>.
            The default is <c>false</c>.</value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.IsReadOnly"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IsSynchronized">
            <summary>
            Gets a value indicating whether access to the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is synchronized (thread-safe).
            </summary>
            <value>
            <c>true</c> if access to the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            is synchronized (thread-safe); otherwise, <c>false</c>.
            The default is <c>false</c>.</value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.IsSynchronized"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.IsUnique">
            <summary>
            Gets or sets a value indicating whether the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            ensures that all elements are unique.
            </summary>
            <value>
            <c>true</c> if the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            ensures that all elements are unique; otherwise,
            <c>false</c>. The default is <c>false</c>.</value>
            <exception cref="T:System.InvalidOperationException">
            The property is set to <c>true</c>, and the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>
            already contains duplicate elements.</exception>
            <exception cref="T:System.NotSupportedException">
            The property is set, and the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.</exception>
            <remarks><para>
            <b>IsUnique</b> provides a set-like collection by ensuring that
            all elements in the <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> 
            are unique.
            </para><para>
            When changed to <c>true</c>, this property throws an 
            <see cref="T:System.InvalidOperationException"/> if the 
            <b>FieldInfoCollection</b> already contains duplicate
            elements. Any subsequent attempt to add an element that is
            already contained in the <b>FieldInfoCollection</b> 
            will cause a <see cref="T:System.NotSupportedException"/>.
            </para></remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Item(System.Int32)">
            <summary>
            Gets or sets the <see cref="T:System.Reflection.FieldInfo"/>
            element at the specified index.
            </summary>
            <param name="index">
            The zero-based index of the <see cref="T:System.Reflection.FieldInfo"/>
            element to get or set.</param>
            <value>
            The <see cref="T:System.Reflection.FieldInfo"/> element
            at the specified <paramref name="index"/>.
            </value>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="index"/> is equal to or
            greater than <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.</para></exception>
            <exception cref="T:System.NotSupportedException"><para>
            The property is set, and the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </para><para>-or-</para><para>
            The property is set, the <b>FieldInfoCollection</b>
            already contains the specified element at a different index,
            and the <b>FieldInfoCollection</b> ensures
            that all elements are unique.</para></exception>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.Item(System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.System#Collections#IList#Item(System.Int32)">
            <summary>
            Gets or sets the element at the specified index.
            </summary>
            <param name="index">
            The zero-based index of the element to get or set.</param>
            <value>
            The element at the specified <paramref name="index"/>.
            When the property is set, this value must be compatible
            with <see cref="T:System.Reflection.FieldInfo"/>.
            </value>
            <exception cref="T:System.ArgumentOutOfRangeException">
            <para><paramref name="index"/> is less than zero.</para>
            <para>-or-</para>
            <para><paramref name="index"/> is equal to
            or greater than <see cref="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.Count"/>.</para></exception>
            <exception cref="T:System.InvalidCastException">
            The property is set to a value that is not compatible
            with <see cref="T:System.Reflection.FieldInfo"/>.</exception>
            <exception cref="T:System.NotSupportedException"><para>
            The property is set, and the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/> is read-only.
            </para><para>-or-</para><para>
            The property is set, the <b>FieldInfoCollection</b>
            already contains the specified element at a different index,
            and the <b>FieldInfoCollection</b> ensures
            that all elements are unique.</para></exception>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.Item(System.Int32)"/> for details.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection.SyncRoot">
            <summary>
            Gets an object that can be used to synchronize access to the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </summary>
            <value>
            An object that can be used to synchronize access to the
            <see cref="T:Castle.Facilities.NHibernateIntegration.Util.FieldInfoCollection"/>.
            </value>
            <remarks>
            Please refer to <see cref="P:System.Collections.ArrayList.SyncRoot"/> for details.
            </remarks>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil">
            <summary>
            Summary description for ReflectionUtil.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetPropertyValue(System.Object,System.String)">
            <summary>
            Gets the property value.
            </summary>
            <param name="obj">obj.</param>
            <param name="property">Property.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetProperty(System.Object,System.String)">
            <summary>
            Gets the PropertyInfo thus named.
            </summary>
            <param name="obj">obj.</param>
            <param name="property">Property.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetField(System.Object,System.String)">
            <summary>
            Gets the FieldInfo thus named
            </summary>
            <param name="obj">obj.</param>
            <param name="field">Field.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.PropertyHasValue(System.Object,System.Reflection.PropertyInfo)">
            <summary>
            Check if the property is not null and can be read and is no indexed.
            This is done to know if it can be read safely.
            </summary>
            <param name="obj">Obj.</param>
            <param name="prop">Prop.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.IsSimpleType(System.Type)">
            <summary>
            Determines whether type is simple enough to need just ToString()
            to show its state.
            (string,int, bool, enums are simple.
            Anything else is false.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.IsSimpleObject(System.Object)">
            <summary>
            Determines whether the object is simple.
            An object is simple if its type is simple or if it's null.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetName(System.Object)">
            <summary>
            Gets the name of an object.
            The name of the object is it's type name or the value of
            its Name property or field
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetFieldValue(System.Object,System.Reflection.FieldInfo)">
            <summary>
            Gets the field value from object, and return 
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetValue(System.Object)">
            <summary>
            Gets the value of the object, if the object is simple, the returned string is
            the object ToString(), otherwise, it's the object name (if it has one) or the object type.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetFieldsWithAttribute(System.Type,System.Type)">
            <summary>
            Gets all the fields from the object's type with specified attribute
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.ConvertTo(System.String,System.Type)">
            <summary>
            Converts from string to the type.
            Can covert from string, enums booleans, bytes, int32 and datetime
            </summary>
            <param name="text">Text.</param>
            <param name="type">Type.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.AddToArray(System.Reflection.FieldInfo,System.Object,System.Object)">
            <summary>
            Adds to array.
            </summary>
            <param name="field">The field.</param>
            <param name="instance">The instance.</param>
            <param name="val">The val.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetFieldsWithOutAttributes(System.Type,System.Type[])">
            <summary>
            Gets all the fields WITHOUT ANY of the specified attributes.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetNameOrEmpty(System.Object)">
            <summary>
            Gets the value of a property or field name in the object.
            Or return empty string if there aren't any.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.SetName(System.Object,System.String)">
            <summary>
            Sets the name property or value of an object to the value of name.
            Does nothing if the object doesn't have any fields or properties named 'name'
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.RemoveFromArray(System.Reflection.FieldInfo,System.Object,System.Int32)">
            <summary>
            Removes from array.
            </summary>
            <param name="field">The field.</param>
            <param name="instance">The instance.</param>
            <param name="index">The index.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetProperties(System.Object)">
            <summary>
            Gets the properties.
            </summary>
            <param name="obj">The obj.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetPropertyValue(System.Reflection.PropertyInfo,System.Object)">
            <summary>
            Gets the property value.
            </summary>
            <param name="property">The property.</param>
            <param name="obj">The obj.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetPropertiesDictionary(System.Object)">
            <summary>
            Gets the readable (non indexed) properties names and values.
            The keys holds the names of the properties.
            The values are the values of the properties
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.GetFieldsDictionary(System.Object)">
            <summary>
            Gets the fields names and values.
            The keys holds the names of the fields.
            The values hold the value of the field if it's a simple type, 
            or the name of the field's type.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtil.HasValue(System.Object)">
            <summary>
            An object has value if it's not null, 
            an collection containing elements and a non-empty string
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtility">
            <summary>
            Utility classes for NHibernate. Contains methods to get properties of an entity etc.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtility.GetPropertiesDictionary(System.Object)">
            <summary>
            Gets the readable (non indexed) properties names and values.
            The keys holds the names of the properties.
            The values are the values of the properties
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Util.ReflectionUtility.IsSimpleType(System.Type)">
            <summary>
            Determines whether type is simple enough to need just ToString()
            to show its state.
            (string,int, bool, enums are simple.
            Anything else is false.
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Constants">
            <summary>
            Exposes constants used by the facility and its internal 
            components
            </summary>
        </member>
        <member name="F:Castle.Facilities.NHibernateIntegration.Constants.DefaultAlias">
            <summary>
            
            </summary>
        </member>
        <member name="F:Castle.Facilities.NHibernateIntegration.Constants.SessionFactoryConfiguration">
            <summary>
            Key at which the configuration for a specific SessionFactory is stored
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore">
            <summary>
            
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore">
            <summary>
            
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.ISessionStore">
            <summary>
            Provides the contract for implementors who want to 
            store valid session so they can be reused in a invocation
            chain.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.FindCompatibleSession(System.String)">
            <summary>
            Should return a previously stored session 
            for the given alias if available, otherwise null.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.Store(System.String,Castle.Facilities.NHibernateIntegration.SessionDelegate)">
            <summary>
            Should store the specified session instance 
            </summary>
            <param name="alias"></param>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.Remove(Castle.Facilities.NHibernateIntegration.SessionDelegate)">
            <summary>
            Should remove the session from the store 
            only.
            </summary>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.IsCurrentActivityEmptyFor(System.String)">
            <summary>
            Returns <c>true</c> if the current activity
            (which is an execution activity context) has no
            sessions available
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.FindCompatibleStatelessSession(System.String)">
            <summary>
            Should return a previously stored stateless session 
            for the given alias if available, otherwise null.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.Store(System.String,Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate)">
            <summary>
            Should store the specified stateless session instance.
            </summary>
            <param name="alias"></param>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionStore.Remove(Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate)">
            <summary>
            Should remove the stateless session from the store only.
            </summary>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.GetStackFor(System.String)">
            <summary>
            Gets the stack of <see cref="T:Castle.Facilities.NHibernateIntegration.SessionDelegate"/> objects for the specified <paramref name="alias"/>.
            </summary>
            <param name="alias">The alias.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.FindCompatibleSession(System.String)">
            <summary>
            Should return a previously stored session
            for the given alias if available, otherwise null.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.Store(System.String,Castle.Facilities.NHibernateIntegration.SessionDelegate)">
            <summary>
            Should store the specified session instance
            </summary>
            <param name="alias"></param>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.Remove(Castle.Facilities.NHibernateIntegration.SessionDelegate)">
            <summary>
            Should remove the session from the store
            only.
            </summary>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.IsCurrentActivityEmptyFor(System.String)">
            <summary>
            Returns <c>true</c> if the current activity
            (which is an execution activity context) has no
            sessions available
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.GetStatelessSessionStackFor(System.String)">
            <summary>
            Gets the stack of <see cref="T:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate"/> objects
            for the specified <paramref name="alias"/>.
            </summary>
            <param name="alias">The alias.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.FindCompatibleStatelessSession(System.String)">
            <summary>
            Should return a previously stored stateless session 
            for the given alias if available, otherwise null.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.Store(System.String,Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate)">
            <summary>
            Should store the specified stateless session instance.
            </summary>
            <param name="alias"></param>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractSessionStore.Remove(Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate)">
            <summary>
            Should remove the stateless session from the store only.
            </summary>
            <param name="session"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.GetStackFor(System.String)">
            <summary>
            Gets the stack of <see cref="T:Castle.Facilities.NHibernateIntegration.SessionDelegate"/> objects for the specified <paramref name="alias"/>.
            </summary>
            <param name="alias">The alias.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.GetDictionary">
            <summary>
            Gets the dictionary.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.StoreDictionary(System.Collections.IDictionary)">
            <summary>
            Stores the dictionary.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.GetStatelessSessionStackFor(System.String)">
            <summary>
            Gets the stack of <see cref="T:Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate"/> objects
            for the specified <paramref name="alias"/>.
            </summary>
            <param name="alias">The alias.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.GetStatelessSessionDictionary">
            <summary>
            Gets the IStatelessSession dictionary.
            </summary>
            <returns>A dictionary.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.StoreStatelessSessionDictionary(System.Collections.IDictionary)">
            <summary>
            Stores the IStatelessSession dictionary.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.SlotKey">
            <summary>
            Name used for storage in <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>
            </summary>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionStores.AbstractDictStackSessionStore.StatelessSessionSlotKey">
            <summary>
            Name used for storage in <see cref="T:System.Runtime.Remoting.Messaging.CallContext"/>
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.SessionStores.CallContextSessionStore">
            <summary>
            Provides an implementation of <see cref="T:Castle.Facilities.NHibernateIntegration.ISessionStore"/>
            which relies on <c>CallContext</c>
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.CallContextSessionStore.GetDictionary">
            <summary>
            Gets the dictionary.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.CallContextSessionStore.StoreDictionary(System.Collections.IDictionary)">
            <summary>
            Stores the dictionary.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.CallContextSessionStore.GetStatelessSessionDictionary">
            <summary>
            Gets the IStatelessSession dictionary.
            </summary>
            <returns>A dictionary.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.CallContextSessionStore.StoreStatelessSessionDictionary(System.Collections.IDictionary)">
            <summary>
            Stores the IStatelessSession dictionary.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder">
            <summary>
            Default imlementation of <see cref="T:Castle.Facilities.NHibernateIntegration.IConfigurationBuilder"/>
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.IConfigurationBuilder">
            <summary>
            Builds up the Configuration object
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.IConfigurationBuilder.GetConfiguration(Castle.Core.Configuration.IConfiguration)">
            <summary>
            Builds the Configuration object from the specifed configuration
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder.GetConfiguration(Castle.Core.Configuration.IConfiguration)">
            <summary>
            Builds the Configuration object from the specifed configuration
            </summary>
            <param name="config"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder.ApplyConfigurationSettings(NHibernate.Cfg.Configuration,Castle.Core.Configuration.IConfiguration)">
            <summary>
            Applies the configuration settings.
            </summary>
            <param name="cfg">The CFG.</param>
            <param name="facilityConfig">The facility config.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder.RegisterResources(NHibernate.Cfg.Configuration,Castle.Core.Configuration.IConfiguration)">
            <summary>
            Registers the resources.
            </summary>
            <param name="cfg">The CFG.</param>
            <param name="facilityConfig">The facility config.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder.RegisterListeners(NHibernate.Cfg.Configuration,Castle.Core.Configuration.IConfiguration)">
            <summary>
            Registers the listeners.
            </summary>
            <param name="cfg">The CFG.</param>
            <param name="facilityConfig">The facility config.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder.RegisterAssemblies(NHibernate.Cfg.Configuration,Castle.Core.Configuration.IConfiguration)">
            <summary>
            Registers the assemblies.
            </summary>
            <param name="cfg">The CFG.</param>
            <param name="facilityConfig">The facility config.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.DefaultConfigurationBuilder.GenerateMappingFromAttributesIfNeeded(NHibernate.Cfg.Configuration,System.String)">
            <summary>
            If <paramref name="targetAssembly"/> has a reference on
            <c>NHibernate.Mapping.Attributes</c> : use the NHibernate mapping
            attributes contained in that assembly to update NHibernate
            configuration (<paramref name="cfg"/>). Else do nothing
            </summary>
            <remarks>
            To avoid an unnecessary dependency on the library
            <c>NHibernate.Mapping.Attributes.dll</c> when using this
            facility without NHibernate mapping attributes, all calls to that
            library are made using reflexion.
            </remarks>
            <param name="cfg">NHibernate configuration</param>
            <param name="targetAssembly">Target assembly name</param>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Persisters.DefaultConfigurationPersister">
            <summary>
            Knows how to read/write an NH <see cref="T:NHibernate.Cfg.Configuration"/> from
            a given filename, and whether that file should be trusted or a new
            Configuration should be built.
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.IConfigurationPersister">
            <summary>
            Knows how to read/write an NH <see cref="T:NHibernate.Cfg.Configuration"/> from
            a given filename, and whether that file should be trusted or a new
            Configuration should be built.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.IConfigurationPersister.ReadConfiguration(System.String)">
            <summary>
            Gets the <see cref="T:NHibernate.Cfg.Configuration"/> from the file.
            </summary>
            <param name="filename">The name of the file to read from</param>
            <returns>The <see cref="T:NHibernate.Cfg.Configuration"/></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.IConfigurationPersister.WriteConfiguration(System.String,NHibernate.Cfg.Configuration)">
            <summary>
            Writes the <see cref="T:NHibernate.Cfg.Configuration"/> to the file
            </summary>
            <param name="filename">The name of the file to write to</param>
            <param name="cfg">The NH Configuration</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.IConfigurationPersister.IsNewConfigurationRequired(System.String,System.Collections.Generic.IList{System.String})">
            <summary>
            Checks if a new <see cref="T:NHibernate.Cfg.Configuration"/> is required or a serialized one should be used.
            </summary>
            <param name="filename">Name of the file containing the NH configuration</param>
            <param name="dependencies">Files that the serialized configuration depends on. </param>
            <returns>If the <see cref="T:NHibernate.Cfg.Configuration"/> should be created or not.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Persisters.DefaultConfigurationPersister.ReadConfiguration(System.String)">
            <summary>
            Gets the <see cref="T:NHibernate.Cfg.Configuration"/> from the file.
            </summary>
            <param name="filename">The name of the file to read from</param>
            <returns>The <see cref="T:NHibernate.Cfg.Configuration"/></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Persisters.DefaultConfigurationPersister.WriteConfiguration(System.String,NHibernate.Cfg.Configuration)">
            <summary>
            Writes the <see cref="T:NHibernate.Cfg.Configuration"/> to the file
            </summary>
            <param name="filename">The name of the file to write to</param>
            <param name="cfg">The NH Configuration</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Persisters.DefaultConfigurationPersister.IsNewConfigurationRequired(System.String,System.Collections.Generic.IList{System.String})">
            <summary>
            Checks if a new <see cref="T:NHibernate.Cfg.Configuration"/> is required or a serialized one should be used.
            </summary>
            <param name="filename">Name of the file containing the NH configuration</param>
            <param name="dependencies">Files that the serialized configuration depends on. </param>
            <returns>If the <see cref="T:NHibernate.Cfg.Configuration"/> should be created or not.</returns>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.DefaultSessionManager">
            <summary>
            
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.ISessionManager">
            <summary>
            Provides a bridge to NHibernate allowing the implementation
            to cache created session (through an invocation) and 
            enlist it on transaction if one is detected on the thread.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionManager.OpenSession">
            <summary>
            Returns a valid opened and connected ISession instance.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionManager.OpenSession(System.String)">
            <summary>
            Returns a valid opened and connected ISession instance
            for the given connection alias.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionManager.OpenStatelessSession">
            <summary>
            Returns a valid opened and connected IStatelessSession instance.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionManager.OpenStatelessSession(System.String)">
            <summary>
            Returns a valid opened and connected IStatelessSession instance
            for the given connection alias.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.ISessionManager.DefaultFlushMode">
            <summary>
            The flushmode the created session gets
            </summary>
        </member>
        <member name="F:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.InterceptorFormatString">
            <summary>
            Format string for NHibernate interceptor components
            </summary>
        </member>
        <member name="F:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.InterceptorName">
            <summary>
            Name for NHibernate Interceptor componentInterceptorName
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.#ctor(Castle.Facilities.NHibernateIntegration.ISessionStore,Castle.MicroKernel.IKernel,Castle.Facilities.NHibernateIntegration.ISessionFactoryResolver)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.DefaultSessionManager"/> class.
            </summary>
            <param name="sessionStore">The session store.</param>
            <param name="kernel">The kernel.</param>
            <param name="factoryResolver">The factory resolver.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.OpenSession">
            <summary>
            Returns a valid opened and connected ISession instance.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.OpenSession(System.String)">
            <summary>
            Returns a valid opened and connected ISession instance
            for the given connection alias.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.OpenStatelessSession">
            <summary>
            Returns a valid opened and connected IStatelessSession instance
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.OpenStatelessSession(System.String)">
            <summary>
            Returns a valid opened and connected IStatelessSession instance
            for the given connection alias.
            </summary>
            <param name="alias"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.EnlistIfNecessary(System.Boolean,Castle.Services.Transaction.ITransaction,Castle.Facilities.NHibernateIntegration.SessionDelegate)">
            <summary>
            Enlists if necessary.
            </summary>
            <param name="weAreSessionOwner">if set to <c>true</c> [we are session owner].</param>
            <param name="transaction">The transaction.</param>
            <param name="session">The session.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.EnlistIfNecessary(System.Boolean,Castle.Services.Transaction.ITransaction,Castle.Facilities.NHibernateIntegration.StatelessSessionDelegate)">
            <summary>
            Enlists if necessary.
            </summary>
            <param name="weAreSessionOwner">if set to <c>true</c> [we are session owner].</param>
            <param name="transaction">The transaction.</param>
            <param name="session">The session.</param>
            <returns></returns>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.DefaultSessionManager.DefaultFlushMode">
            <summary>
            The flushmode the created session gets
            </summary>
            <value></value>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.Empty">
            <summary>
            
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource">
            <summary>
            Resource for a file or an assembly resource
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource.#ctor(System.String)">
            <summary>
            Depending on the resource type, <see cref="T:Castle.Core.Resource.AssemblyResource"/> or <see cref="T:Castle.Core.Resource.FileResource"/> is decorated.
            </summary>
            <param name="resource"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource.CreateRelative(System.String)">
            <summary>
            Returns an instance of Castle.Core.Resource.IResource created according to the relativePath using itself as the root.
            </summary>
            <param name="relativePath"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource.GetStreamReader(System.Text.Encoding)">
            <summary>
            Returns a reader for the stream
            </summary>
            <param name="encoding"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource.GetStreamReader">
            <summary>
            Returns a reader for the stream
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource.Dispose">
            <summary>
            Disposes the allocated resources
            </summary>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.Internal.FileAssemblyResource.FileBasePath">
            <summary>
            Only valid for resources that can be obtained through relative paths
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.IConfigurationContributor">
            <summary>
            Allows implementors to modify <see cref="T:NHibernate.Cfg.Configuration"/>
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.IConfigurationContributor.Process(System.String,NHibernate.Cfg.Configuration)">
            <summary>
            Modifies available <see cref="T:NHibernate.Cfg.Configuration"/> instances.
            </summary>
            <param name="name">Name of the session factory</param>
            <param name="config">The config for sessionFactory</param>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.ISessionFactoryResolver">
            <summary>
            Dictates the contract for possible different approach 
            of session factories obtention.
            </summary>
            <remarks>
            Inspired on Cuyahoga project
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionFactoryResolver.RegisterAliasComponentIdMapping(System.String,System.String)">
            <summary>
            Invoked by the facility while the configuration 
            node are being interpreted.
            </summary>
            <param name="alias">
            The alias associated with the session factory on the configuration node
            </param>
            <param name="componentKey">
            The component key associated with the session factory on the kernel
            </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.ISessionFactoryResolver.GetSessionFactory(System.String)">
            <summary>
            Implementors should return a session factory 
            instance for the specified alias configured previously.
            </summary>
            <param name="alias">
            The alias associated with the session factory on the configuration node
            </param>
            <returns>
            A session factory instance
            </returns>
            <exception cref="T:Castle.MicroKernel.Facilities.FacilityException">
            If the alias is not associated with a session factory
            </exception>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter">
            <summary>
            Adapter to <see cref="T:Castle.Services.Transaction.IResource"/> so a
            NHibernate transaction can be enlisted within
            <see cref="T:Castle.Services.Transaction.ITransaction"/> instances.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter.#ctor(NHibernate.ITransaction,System.Boolean)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter"/> class.
            </summary>
            <param name="transaction">The transaction.</param>
            <param name="isAmbient"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter.Start">
            <summary>
            Implementors should start the
            transaction on the underlying resource
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter.Commit">
            <summary>
            Implementors should commit the
            transaction on the underlying resource
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter.Rollback">
            <summary>
            Implementors should rollback the
            transaction on the underlying resource
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.ResourceAdapter.Dispose">
            <summary>
            
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Builders.PersistentConfigurationBuilder">
            <summary>
            Serializes the Configuration for subsequent initializations.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.PersistentConfigurationBuilder.#ctor(Castle.Facilities.NHibernateIntegration.IConfigurationPersister)">
            <summary>
            Initializes the presistent <see cref="T:NHibernate.Cfg.Configuration"/> builder
            with an specific <see cref="T:Castle.Facilities.NHibernateIntegration.IConfigurationPersister"/>
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.PersistentConfigurationBuilder.#ctor">
            <summary>
            Initializes the presistent <see cref="T:NHibernate.Cfg.Configuration"/> builder
            using the default <see cref="T:Castle.Facilities.NHibernateIntegration.IConfigurationPersister"/>
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.PersistentConfigurationBuilder.GetConfiguration(Castle.Core.Configuration.IConfiguration)">
            <summary>
            Returns the Deserialized Configuration
            </summary>
            <param name="config">The configuration node.</param>
            <returns>NHibernate Configuration</returns>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.SessionDelegate">
            <summary>
            Proxies an ISession so the user cannot close a session which
            is controlled by a transaction, or, when this is not the case, 
            make sure to remove the session from the storage.
            <seealso cref="T:Castle.Facilities.NHibernateIntegration.ISessionStore"/>
            <seealso cref="T:Castle.Facilities.NHibernateIntegration.ISessionManager"/>
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.#ctor(System.Boolean,NHibernate.ISession,Castle.Facilities.NHibernateIntegration.ISessionStore)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.SessionDelegate"/> class.
            </summary>
            <param name="canClose">if set to <c>true</c> [can close].</param>
            <param name="inner">The inner.</param>
            <param name="sessionStore">The session store.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CancelQuery">
            <summary>
            Cancel execution of the current query.
            </summary>
            <remarks>
            May be called from one thread to stop execution of a query in another thread.
            Use with care!
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.IsDirty">
            <summary>
            Does this <c>ISession</c> contain any changes which must be
            synchronized with the database? Would any SQL be executed if
            we flushed this session?
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Flush">
            <summary>
            Force the <c>ISession</c> to flush.
            </summary>
            <remarks>
            Must be called at the end of a unit of work, before commiting the transaction and closing
            the session (<c>Transaction.Commit()</c> calls this method). <i>Flushing</i> if the process
            of synchronising the underlying persistent store with persistable state held in memory.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Disconnect">
            <summary>
            Disconnect the <c>ISession</c> from the current ADO.NET connection.
            </summary>
            <returns>
            The connection provided by the application or <see langword="null"/>
            </returns>
            <remarks>
            If the connection was obtained by Hibernate, close it or return it to the connection
            pool. Otherwise return it to the application. This is used by applications which require
            long transactions.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Reconnect">
            <summary>
            Obtain a new ADO.NET connection.
            </summary>
            <remarks>
            This is used by applications which require long transactions
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Reconnect(System.Data.IDbConnection)">
            <summary>
            Reconnect to the given ADO.NET connection.
            </summary>
            <param name="connection">An ADO.NET connection</param>
            <remarks>This is used by applications which require long transactions</remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetIdentifier(System.Object)">
            <summary>
            Return the identifier of an entity instance cached by the <c>ISession</c>
            </summary>
            <param name="obj">a persistent instance</param>
            <returns>the identifier</returns>
            <remarks>
            Throws an exception if the instance is transient or associated with a different
            <c>ISession</c>
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Contains(System.Object)">
            <summary>
            Is this instance associated with this Session?
            </summary>
            <param name="obj">an instance of a persistent class</param>
            <returns>
            true if the given instance is associated with this Session
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Evict(System.Object)">
            <summary>
            Remove this instance from the session cache.
            </summary>
            <param name="obj">a persistent instance</param>
            <remarks>
            Changes to the instance will not be synchronized with the database.
            This operation cascades to associated instances if the association is mapped
            with <c>cascade="all"</c> or <c>cascade="all-delete-orphan"</c>.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load(System.Type,System.Object,NHibernate.LockMode)">
            <summary>
            Return the persistent instance of the given entity class with the given identifier,
            obtaining the specified lock mode.
            </summary>
            <param name="theType">A persistent class</param>
            <param name="id">A valid identifier of an existing persistent instance of the class</param>
            <param name="lockMode">The lock level</param>
            <returns>the persistent instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load(System.String,System.Object,NHibernate.LockMode)">
            <summary>
            Return the persistent instance of the given entity class with the given identifier,
            obtaining the specified lock mode.
            </summary>
            <param name="entityName">Name of the entity</param>
            <param name="id">A valid identifier of an existing persistent instance of the class</param>
            <param name="lockMode">The lock level</param>
            <returns>the persistent instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load(System.Type,System.Object)">
            <summary>
            Return the persistent instance of the given entity class with the given identifier,
            assuming that the instance exists.
            </summary>
            <param name="theType">A persistent class</param>
            <param name="id">A valid identifier of an existing persistent instance of the class</param>
            <returns>The persistent instance or proxy</returns>
            <remarks>
            You should not use this method to determine if an instance exists (use a query or
            <see cref="M:NHibernate.ISession.Get(System.Type,System.Object)"/> instead). Use this only to retrieve an instance
            that you assume exists, where non-existence would be an actual error.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load``1(System.Object,NHibernate.LockMode)">
            <summary>
            Loads the specified id.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="id">The id.</param>
            <param name="lockMode">The lock mode.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load``1(System.Object)">
            <summary>
            Loads the specified id.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="id">The id.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load(System.String,System.Object)">
            <summary>
            Loads the specified id.
            </summary>
            <param name="entityName">Name of the entity</param>
            <param name="id">The id.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Load(System.Object,System.Object)">
            <summary>
            Read the persistent state associated with the given identifier into the given transient
            instance.
            </summary>
            <param name="obj">An "empty" instance of the persistent class</param>
            <param name="id">A valid identifier of an existing persistent instance of the class</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Get(System.Type,System.Object)">
            <summary>
            Return the persistent instance of the given entity class with the given identifier, or null
            if there is no such persistent instance. (If the instance, or a proxy for the instance, is
            already associated with the session, return that instance or proxy.)
            </summary>
            <param name="clazz">a persistent class</param>
            <param name="id">an identifier</param>
            <returns>a persistent instance or null</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Get(System.Type,System.Object,NHibernate.LockMode)">
            <summary>
            Return the persistent instance of the given entity class with the given identifier, or null
            if there is no such persistent instance. Obtain the specified lock mode if the instance
            exists.
            </summary>
            <param name="clazz">a persistent class</param>
            <param name="id">an identifier</param>
            <param name="lockMode">the lock mode</param>
            <returns>a persistent instance or null</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetSessionImplementation">
            <summary>
            Gets the session implementation.
            </summary>
            <returns>
            An NHibernate implementation of the <seealso cref="T:NHibernate.Engine.ISessionImplementor"/> interface
            </returns>
            <remarks>
            This method is provided in order to get the <b>NHibernate</b> implementation of the session from wrapper implementions.
            Implementors of the <seealso cref="T:NHibernate.ISession"/> interface should return the NHibernate implementation of this method.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetSession(NHibernate.EntityMode)">
            <summary>
            Starts a new Session with the given entity mode in effect. This secondary
            Session inherits the connection, transaction, and other context
            information from the primary Session. It doesn't need to be flushed
            or closed by the developer.
            </summary>
            <param name="entityMode">The entity mode to use for the new session.</param>
            <returns>The new session</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Get(System.String,System.Object)">
            <summary> 
            Return the persistent instance of the given named entity with the given identifier,
            or null if there is no such persistent instance. (If the instance, or a proxy for the
            instance, is already associated with the session, return that instance or proxy.) 
            </summary>
            <param name="entityName">the entity name </param>
            <param name="id">an identifier </param>
            <returns> a persistent instance or null </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Get``1(System.Object)">
            <summary>
            Gets the specified id.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="id">The id.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Get``1(System.Object,NHibernate.LockMode)">
            <summary>
            Gets the specified id.
            </summary>
            <typeparam name="T"></typeparam>
            <param name="id">The id.</param>
            <param name="lockMode">The lock mode.</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.EnableFilter(System.String)">
            <summary>
            Enable the named filter for this current session.
            </summary>
            <param name="filterName">The name of the filter to be enabled.</param>
            <returns>
            The Filter instance representing the enabled fiter.
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetEnabledFilter(System.String)">
            <summary>
            Retrieve a currently enabled filter by name.
            </summary>
            <param name="filterName">The name of the filter to be retrieved.</param>
            <returns>
            The Filter instance representing the enabled fiter.
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.DisableFilter(System.String)">
            <summary>
            Disable the named filter for the current session.
            </summary>
            <param name="filterName">The name of the filter to be disabled.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateMultiQuery">
            <summary>
            Create a multi query, a query that can send several
            queries to the server, and return all their results in a single
            call.
            </summary>
            <returns>
            An <see cref="T:NHibernate.IMultiQuery"/> that can return
            a list of all the results of all the queries.
            Note that each query result is itself usually a list.
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Replicate(System.Object,NHibernate.ReplicationMode)">
            <summary>
            Persist all reachable transient objects, reusing the current identifier
            values. Note that this will not trigger the Interceptor of the Session.
            </summary>
            <param name="obj"></param>
            <param name="replicationMode"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Replicate(System.String,System.Object,NHibernate.ReplicationMode)">
            <summary> 
            Persist the state of the given detached instance, reusing the current
            identifier value.  This operation cascades to associated instances if
            the association is mapped with <tt>cascade="replicate"</tt>. 
            </summary>
            <param name="entityName"></param>
            <param name="obj">a detached instance of a persistent class </param>
            <param name="replicationMode"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Save(System.Object)">
            <summary>
            Persist the given transient instance, first assigning a generated identifier.
            </summary>
            <param name="obj">A transient instance of a persistent class</param>
            <returns>The generated identifier</returns>
            <remarks>
            Save will use the current value of the identifier property if the <c>Assigned</c>
            generator is used.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Save(System.Object,System.Object)">
            <summary>
            Persist the given transient instance, using the given identifier.
            </summary>
            <param name="obj">A transient instance of a persistent class</param>
            <param name="id">An unused valid identifier</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Save(System.String,System.Object)">
            <summary>
            Persist the given transient instance, first assigning a generated identifier. (Or
            using the current value of the identifier property if the <tt>assigned</tt>
            generator is used.)
            </summary>
            <param name="entityName">The Entity name.</param>
            <param name="obj">a transient instance of a persistent class </param>
            <returns> the generated identifier </returns>
            <remarks>
            This operation cascades to associated instances if the
            association is mapped with <tt>cascade="save-update"</tt>. 
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.SaveOrUpdate(System.Object)">
            <summary>
            Either <c>Save()</c> or <c>Update()</c> the given instance, depending upon the value of
            its identifier property.
            </summary>
            <param name="obj">A transient instance containing new or updated state</param>
            <remarks>
            By default the instance is always saved. This behaviour may be adjusted by specifying
            an <c>unsaved-value</c> attribute of the identifier property mapping
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.SaveOrUpdate(System.String,System.Object)">
            <summary> 
            Either <see cref="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Save(System.String,System.Object)"/> or <see cref="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Update(System.String,System.Object)"/>
            the given instance, depending upon resolution of the unsaved-value checks
            (see the manual for discussion of unsaved-value checking).
            </summary>
            <param name="entityName">The name of the entity </param>
            <param name="obj">a transient or detached instance containing new or updated state </param>
            <seealso cref="M:NHibernate.ISession.Save(System.String,System.Object)"/>
            <seealso cref="M:NHibernate.ISession.Update(System.String,System.Object)"/>
            <remarks>
            This operation cascades to associated instances if the association is mapped
            with <tt>cascade="save-update"</tt>. 
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Update(System.Object)">
            <summary>
            Update the persistent instance with the identifier of the given transient instance.
            </summary>
            <param name="obj">A transient instance containing updated state</param>
            <remarks>
            If there is a persistent instance with the same identifier, an exception is thrown. If
            the given transient instance has a <see langword="null"/> identifier, an exception will be thrown.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Update(System.Object,System.Object)">
            <summary>
            Update the persistent state associated with the given identifier.
            </summary>
            <param name="obj">A transient instance containing updated state</param>
            <param name="id">Identifier of persistent instance</param>
            <remarks>
            An exception is thrown if there is a persistent instance with the same identifier
            in the current session.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Update(System.String,System.Object)">
            <summary> 
            Update the persistent instance with the identifier of the given detached
            instance. 
            </summary>
            <param name="entityName">The Entity name.</param>
            <param name="obj">a detached instance containing updated state </param>
            <remarks>
            If there is a persistent instance with the same identifier,
            an exception is thrown. This operation cascades to associated instances
            if the association is mapped with <tt>cascade="save-update"</tt>. 
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Merge(System.Object)">
            <summary> 
            Copy the state of the given object onto the persistent object with the same
            identifier. If there is no persistent instance currently associated with
            the session, it will be loaded. Return the persistent instance. If the
            given instance is unsaved, save a copy of and return it as a newly persistent
            instance. The given instance does not become associated with the session.
            This operation cascades to associated instances if the association is mapped
            with <tt>cascade="merge"</tt>.<br/>
            <br/>
            The semantics of this method are defined by JSR-220. 
            </summary>
            <param name="obj">a detached instance with state to be copied </param>
            <returns> an updated persistent instance </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Merge(System.String,System.Object)">
            <summary> 
            Copy the state of the given object onto the persistent object with the same
            identifier. If there is no persistent instance currently associated with
            the session, it will be loaded. Return the persistent instance. If the
            given instance is unsaved, save a copy of and return it as a newly persistent
            instance. The given instance does not become associated with the session.
            This operation cascades to associated instances if the association is mapped
            with <tt>cascade="merge"</tt>.<br/>
            <br/>
            The semantics of this method are defined by JSR-220. 
            </summary>
            <param name="entityName">The entity name</param>
            <param name="obj">a detached instance with state to be copied </param>
            <returns> an updated persistent instance </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Persist(System.Object)">
            <summary> 
            Make a transient instance persistent. This operation cascades to associated
            instances if the association is mapped with <tt>cascade="persist"</tt>.<br/>
            <br/>
            The semantics of this method are defined by JSR-220. 
            </summary>
            <param name="obj">a transient instance to be made persistent </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Persist(System.String,System.Object)">
            <summary> 
            Make a transient instance persistent. This operation cascades to associated
            instances if the association is mapped with <tt>cascade="persist"</tt>.<br/>
            <br/>
            The semantics of this method are defined by JSR-220. 
            </summary>
            <param name="entityName">The entity name</param>
            <param name="obj">a transient instance to be made persistent </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.SaveOrUpdateCopy(System.Object)">
            <summary>
            Copy the state of the given object onto the persistent object with the same
            identifier. If there is no persistent instance currently associated with
            the session, it will be loaded. Return the persistent instance. If the
            given instance is unsaved or does not exist in the database, save it and
            return it as a newly persistent instance. Otherwise, the given instance
            does not become associated with the session.
            </summary>
            <param name="obj">a transient instance with state to be copied</param>
            <returns>an updated persistent instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.SaveOrUpdateCopy(System.Object,System.Object)">
            <summary>
            Copy the state of the given object onto the persistent object with the
            given identifier. If there is no persistent instance currently associated
            with the session, it will be loaded. Return the persistent instance. If
            there is no database row with the given identifier, save the given instance
            and return it as a newly persistent instance. Otherwise, the given instance
            does not become associated with the session.
            </summary>
            <param name="obj">a persistent or transient instance with state to be copied</param>
            <param name="id">the identifier of the instance to copy to</param>
            <returns>an updated persistent instance</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Delete(System.Object)">
            <summary>
            Remove a persistent instance from the datastore.
            </summary>
            <param name="obj">The instance to be removed</param>
            <remarks>
            The argument may be an instance associated with the receiving <c>ISession</c> or a
            transient instance with an identifier associated with existing persistent state.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Delete(System.String,System.Object)">
            <summary>
            Remove a persistent instance from the datastore.
            </summary>
            <param name="entityName">Name of the entity</param>
            <param name="obj">The instance to be removed</param>
            <remarks>
            The argument may be an instance associated with the receiving <c>ISession</c> or a
            transient instance with an identifier associated with existing persistent state.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Find(System.String)">
            <summary>
            Execute a query
            </summary>
            <param name="query">A query expressed in Hibernate's query language</param>
            <returns>A distinct list of instances</returns>
            <remarks>See <see cref="M:NHibernate.IQuery.List"/> for implications of <c>cache</c> usage.</remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Find(System.String,System.Object,NHibernate.Type.IType)">
            <summary>
            Execute a query, binding a value to a "?" parameter in the query string.
            </summary>
            <param name="query">The query string</param>
            <param name="value">A value to be bound to a "?" placeholder</param>
            <param name="type">The Hibernate type of the value</param>
            <returns>A distinct list of instances</returns>
            <remarks>See <see cref="M:NHibernate.IQuery.List"/> for implications of <c>cache</c> usage.</remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Find(System.String,System.Object[],NHibernate.Type.IType[])">
            <summary>
            Execute a query, binding an array of values to a "?" parameters in the query string.
            </summary>
            <param name="query">The query string</param>
            <param name="values">An array of values to be bound to the "?" placeholders</param>
            <param name="types">An array of Hibernate types of the values</param>
            <returns>A distinct list of instances</returns>
            <remarks>See <see cref="M:NHibernate.IQuery.List"/> for implications of <c>cache</c> usage.</remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Enumerable(System.String)">
            <summary>
            Execute a query and return the results in an interator.
            </summary>
            <param name="query">The query string</param>
            <returns>An enumerator</returns>
            <remarks>
            	<para>
            If the query has multiple return values, values will be returned in an array of
            type <c>object[]</c>.
            </para>
            	<para>
            Entities returned as results are initialized on demand. The first SQL query returns
            identifiers only. So <c>Enumerator()</c> is usually a less efficient way to retrieve
            object than <c>List()</c>.
            </para>
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Enumerable(System.String,System.Object,NHibernate.Type.IType)">
            <summary>
            Execute a query and return the results in an interator,
            binding a value to a "?" parameter in the query string.
            </summary>
            <param name="query">The query string</param>
            <param name="value">A value to be written to a "?" placeholder in the query string</param>
            <param name="type">The hibernate type of the value</param>
            <returns>An enumerator</returns>
            <remarks>
            	<para>
            If the query has multiple return values, values will be returned in an array of
            type <c>object[]</c>.
            </para>
            	<para>
            Entities returned as results are initialized on demand. The first SQL query returns
            identifiers only. So <c>Enumerator()</c> is usually a less efficient way to retrieve
            object than <c>List()</c>.
            </para>
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Enumerable(System.String,System.Object[],NHibernate.Type.IType[])">
            <summary>
            Execute a query and return the results in an interator,
            binding the values to "?"s parameters in the query string.
            </summary>
            <param name="query">The query string</param>
            <param name="values">A list of values to be written to "?" placeholders in the query</param>
            <param name="types">A list of hibernate types of the values</param>
            <returns>An enumerator</returns>
            <remarks>
            	<para>
            If the query has multiple return values, values will be returned in an array of
            type <c>object[]</c>.
            </para>
            	<para>
            Entities returned as results are initialized on demand. The first SQL query returns
            identifiers only. So <c>Enumerator()</c> is usually a less efficient way to retrieve
            object than <c>List()</c>.
            </para>
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Filter(System.Object,System.String)">
            <summary>
            Apply a filter to a persistent collection.
            </summary>
            <param name="collection">A persistent collection to filter</param>
            <param name="filter">A filter query string</param>
            <returns>The resulting collection</returns>
            <remarks>
            A filter is a Hibernate query that may refer to <c>this</c>, the collection element.
            Filters allow efficient access to very large lazy collections. (Executing the filter
            does not initialize the collection.)
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Filter(System.Object,System.String,System.Object,NHibernate.Type.IType)">
            <summary>
            Apply a filter to a persistent collection, binding the given parameter to a "?" placeholder
            </summary>
            <param name="collection">A persistent collection to filter</param>
            <param name="filter">A filter query string</param>
            <param name="value">A value to be written to a "?" placeholder in the query</param>
            <param name="type">The hibernate type of value</param>
            <returns>A collection</returns>
            <remarks>
            A filter is a Hibernate query that may refer to <c>this</c>, the collection element.
            Filters allow efficient access to very large lazy collections. (Executing the filter
            does not initialize the collection.)
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Filter(System.Object,System.String,System.Object[],NHibernate.Type.IType[])">
            <summary>
            Apply a filter to a persistent collection, binding the given parameters to "?" placeholders.
            </summary>
            <param name="collection">A persistent collection to filter</param>
            <param name="filter">A filter query string</param>
            <param name="values">The values to be written to "?" placeholders in the query</param>
            <param name="types">The hibernate types of the values</param>
            <returns>A collection</returns>
            <remarks>
            A filter is a Hibernate query that may refer to <c>this</c>, the collection element.
            Filters allow efficient access to very large lazy collections. (Executing the filter
            does not initialize the collection.)
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Delete(System.String)">
            <summary>
            Delete all objects returned by the query.
            </summary>
            <param name="query">The query string</param>
            <returns>Returns the number of objects deleted.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Delete(System.String,System.Object,NHibernate.Type.IType)">
            <summary>
            Delete all objects returned by the query.
            </summary>
            <param name="query">The query string</param>
            <param name="value">A value to be written to a "?" placeholer in the query</param>
            <param name="type">The hibernate type of value.</param>
            <returns>The number of instances deleted</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Delete(System.String,System.Object[],NHibernate.Type.IType[])">
            <summary>
            Delete all objects returned by the query.
            </summary>
            <param name="query">The query string</param>
            <param name="values">A list of values to be written to "?" placeholders in the query</param>
            <param name="types">A list of Hibernate types of the values</param>
            <returns>The number of instances deleted</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Lock(System.Object,NHibernate.LockMode)">
            <summary>
            Obtain the specified lock level upon the given object.
            </summary>
            <param name="obj">A persistent instance</param>
            <param name="lockMode">The lock level</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Lock(System.String,System.Object,NHibernate.LockMode)">
            <summary> 
            Obtain the specified lock level upon the given object. 
            </summary>
            <param name="entityName">The Entity name.</param>
            <param name="obj">a persistent or transient instance </param>
            <param name="lockMode">the lock level </param>
            <remarks>
            This may be used to perform a version check (<see cref="F:NHibernate.LockMode.Read"/>), to upgrade to a pessimistic
            lock (<see cref="F:NHibernate.LockMode.Upgrade"/>), or to simply reassociate a transient instance
            with a session (<see cref="F:NHibernate.LockMode.None"/>). This operation cascades to associated
            instances if the association is mapped with <tt>cascade="lock"</tt>.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Refresh(System.Object)">
            <summary>
            Re-read the state of the given instance from the underlying database.
            </summary>
            <param name="obj">A persistent instance</param>
            <remarks>
            	<para>
            It is inadvisable to use this to implement long-running sessions that span many
            business tasks. This method is, however, useful in certain special circumstances.
            </para>
            	<para>
            For example,
            <list>
            			<item>Where a database trigger alters the object state upon insert or update</item>
            			<item>After executing direct SQL (eg. a mass update) in the same session</item>
            			<item>After inserting a <c>Blob</c> or <c>Clob</c></item>
            		</list>
            	</para>
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Refresh(System.Object,NHibernate.LockMode)">
            <summary>
            Re-read the state of the given instance from the underlying database, with
            the given <c>LockMode</c>.
            </summary>
            <param name="obj">a persistent or transient instance</param>
            <param name="lockMode">the lock mode to use</param>
            <remarks>
            It is inadvisable to use this to implement long-running sessions that span many
            business tasks. This method is, however, useful in certain special circumstances.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetCurrentLockMode(System.Object)">
            <summary>
            Determine the current lock mode of the given object
            </summary>
            <param name="obj">A persistent instance</param>
            <returns>The current lock mode</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.BeginTransaction">
            <summary>
            Begin a unit of work and return the associated <c>ITransaction</c> object.
            </summary>
            <returns>A transaction instance</returns>
            <remarks>
            If a new underlying transaction is required, begin the transaction. Otherwise
            continue the new work in the context of the existing underlying transaction.
            The class of the returned <see cref="T:NHibernate.ITransaction"/> object is determined by
            the property <c>transaction_factory</c>
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.BeginTransaction(System.Data.IsolationLevel)">
            <summary>
            Begin a transaction with the specified <c>isolationLevel</c>
            </summary>
            <param name="isolationLevel">Isolation level for the new transaction</param>
            <returns>
            A transaction instance having the specified isolation level
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateCriteria``1">
            <summary>
            Creates a new <c>Criteria</c> for the entity class.
            </summary>
            <typeparam name="T">The class to Query</typeparam>
            <returns>An ICriteria object</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateCriteria``1(System.String)">
            <summary>
            Creates a new <c>Criteria</c> for the entity class with a specific alias
            </summary>
            <typeparam name="T">The class to Query</typeparam>
            <param name="alias">The alias of the entity</param>
            <returns>An ICriteria object</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateCriteria(System.Type)">
            <summary>
            Creates a new <c>Criteria</c> for the entity class.
            </summary>
            <param name="persistentClass">The class to Query</param>
            <returns>An ICriteria object</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateCriteria(System.Type,System.String)">
            <summary>
            Creates a new <c>Criteria</c> for the entity class with a specific alias
            </summary>
            <param name="persistentClass">The class to Query</param>
            <param name="alias">The alias of the entity</param>
            <returns>An ICriteria object</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateCriteria(System.String)">
            <summary>
            Creates a new <c>Criteria</c> for the entity class with a specific alias
            </summary>
            <param name="entityName">Name of the entity</param>
            <returns>An ICriteria object</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateCriteria(System.String,System.String)">
            <summary>
            Creates a new <c>Criteria</c> for the entity class with a specific alias
            </summary>
            <param name="entityName">Name of the entity</param>
            <param name="alias">The alias of the entity</param>
            <returns>An ICriteria object</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.QueryOver``1">
            <summary>
            Creates a new <c>IQueryOver&lt;T&gt;</c> for the entity class.
            </summary>
            <typeparam name="T">The entity class</typeparam>
            <returns>
            An ICriteria&lt;T&gt; object
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.QueryOver``1(System.Linq.Expressions.Expression{System.Func{``0}})">
            <summary>
            Creates a new <c>IQueryOver&lt;T&gt;</c> for the entity class.
            </summary>
            <typeparam name="T">The entity class</typeparam>
            <returns>
            An ICriteria&lt;T&gt; object
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateQuery(System.String)">
            <summary>
            Create a new instance of <c>Query</c> for the given query string
            </summary>
            <param name="queryString">A hibernate query string</param>
            <returns>The query</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateQuery(NHibernate.IQueryExpression)">
            <summary>
            Create a new instance of <c>Query</c> for the given query expression
            </summary>
            <param name="queryExpression">A hibernate query expression</param>
            <returns>The query</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateFilter(System.Object,System.String)">
            <summary>
            Create a new instance of <c>Query</c> for the given collection and filter string
            </summary>
            <param name="collection">A persistent collection</param>
            <param name="queryString">A hibernate query</param>
            <returns>A query</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetNamedQuery(System.String)">
            <summary>
            Obtain an instance of <see cref="T:NHibernate.IQuery"/> for a named query string defined in the
            mapping file.
            </summary>
            <param name="queryName">The name of a query defined externally.</param>
            <returns>
            An <see cref="T:NHibernate.IQuery"/> from a named query string.
            </returns>
            <remarks>
            The query can be either in <c>HQL</c> or <c>SQL</c> format.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateSQLQuery(System.String)">
            <summary>
            Create a new instance of <see cref="T:NHibernate.ISQLQuery"/> for the given SQL query string.
            </summary>
            <param name="queryString">a query expressed in SQL</param>
            <returns>
            An <see cref="T:NHibernate.ISQLQuery"/> from the SQL string
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateSQLQuery(System.String,System.String,System.Type)">
            <summary>
            Create a new instance of <c>IQuery</c> for the given SQL string.
            </summary>
            <param name="sql">a query expressed in SQL</param>
            <param name="returnAlias">a table alias that appears inside <c>{}</c> in the SQL string</param>
            <param name="returnClass">the returned persistent class</param>
            <returns>
            An <see cref="T:NHibernate.IQuery"/> from the SQL string
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateSQLQuery(System.String,System.String[],System.Type[])">
            <summary>
            Create a new instance of <see cref="T:NHibernate.IQuery"/> for the given SQL string.
            </summary>
            <param name="sql">a query expressed in SQL</param>
            <param name="returnAliases">an array of table aliases that appear inside <c>{}</c> in the SQL string</param>
            <param name="returnClasses">the returned persistent classes</param>
            <returns>
            An <see cref="T:NHibernate.IQuery"/> from the SQL string
            </returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Clear">
            <summary>
            Completely clear the session. Evict all loaded instances and cancel all pending
            saves, updates and deletions. Do not close open enumerables or instances of
            <c>ScrollableResults</c>.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Close">
            <summary>
            End the <c>ISession</c> by disconnecting from the ADO.NET connection and cleaning up.
            </summary>
            <returns>
            The connection provided by the application or <see langword="null"/>
            </returns>
            <remarks>
            It is not strictly necessary to <c>Close()</c> the <c>ISession</c> but you must
            at least <c>Disconnect()</c> it.
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.GetEntityName(System.Object)">
            <summary>
            Return the entity name for a persistent entity
            </summary>
            <param name="obj">a persistent entity</param>
            <returns>the entity name</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.SetBatchSize(System.Int32)">
            <summary>
            Sets the batch size of the session
            </summary>
            <param name="batchSize"></param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.CreateMultiCriteria">
            <summary>
            An <see cref="T:NHibernate.IMultiCriteria"/> that can return a list of all the results
            of all the criterias.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.Dispose">
            <summary>
            Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.DoClose(System.Boolean)">
            <summary>
            Does the close.
            </summary>
            <param name="closing">if set to <c>true</c> [closing].</param>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionDelegate.AreEqual(NHibernate.ISession,NHibernate.ISession)">
            <summary>
            Returns <see langword="true"/> if the supplied sessions are equal, <see langword="false"/> otherwise.
            </summary>
            <param name="left">The left.</param>
            <param name="right">The right.</param>
            <returns></returns>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.InnerSession">
            <summary>
            Gets the inner session.
            </summary>
            <value>The inner session.</value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.SessionStoreCookie">
            <summary>
            Gets or sets the session store cookie.
            </summary>
            <value>The session store cookie.</value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.FlushMode">
            <summary>
            Determines at which points Hibernate automatically flushes the session.
            </summary>
            <value></value>
            <remarks>
            For a readonly session, it is reasonable to set the flush mode to <c>FlushMode.Never</c>
            at the start of the session (in order to achieve some extra performance).
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.SessionFactory">
            <summary>
            Get the <see cref="T:NHibernate.ISessionFactory"/> that created this instance.
            </summary>
            <value></value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.Connection">
            <summary>
            Gets the ADO.NET connection.
            </summary>
            <value></value>
            <remarks>
            Applications are responsible for calling commit/rollback upon the connection before
            closing the <c>ISession</c>.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.IsOpen">
            <summary>
            Is the <c>ISession</c> still open?
            </summary>
            <value></value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.IsConnected">
            <summary>
            Is the <c>ISession</c> currently connected?
            </summary>
            <value></value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.Transaction">
            <summary>
            Get the current Unit of Work and return the associated <c>ITransaction</c> object.
            </summary>
            <value></value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.CacheMode">
            <summary>
            The current cache mode.
            </summary>
            <value></value>
            <remarks>
            Cache mode determines the manner in which this session can interact with
            the second level cache.
            </remarks>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.Statistics">
            <summary>
            Get the statistics for this session.
            </summary>
            <value></value>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.SessionDelegate.ActiveEntityMode">
            <summary>
            Gets the active entity mode.
            </summary>
            <value>The active entity mode.</value>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.SessionDisposeSynchronization">
            <summary>
            Synchronization to ensure the session disposal on the end of a transaction.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionDisposeSynchronization.#ctor(Castle.Facilities.NHibernateIntegration.SessionDelegate)">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.Internal.SessionDisposeSynchronization"/> class.
            </summary>
            <param name="session">The session.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionDisposeSynchronization.BeforeCompletion">
            <summary>
            Implementors may have code executing
            just before the transaction completes
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionDisposeSynchronization.AfterCompletion">
            <summary>
            Implementors may have code executing
            just after the transaction completes
            </summary>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryActivator">
            <summary>
            Postpones the initiation of SessionFactory until Resolve
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryActivator.#ctor(Castle.Core.ComponentModel,Castle.MicroKernel.IKernel,Castle.MicroKernel.ComponentInstanceDelegate,Castle.MicroKernel.ComponentInstanceDelegate)">
            <summary>
            Constructor for SessionFactoryActivator
            </summary>
            <param name="model"></param>
            <param name="kernel"></param>
            <param name="onCreation"></param>
            <param name="onDestruction"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryActivator.RaiseCreatingSessionFactory">
            <summary>
            Calls the contributors
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryActivator.Create(Castle.MicroKernel.Context.CreationContext)">
            <summary>
            Creates the <see cref="T:NHibernate.ISessionFactory"/> from the configuration
            </summary>
            <param name="context"></param>
            <returns></returns>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryResolver">
            <summary>
            Default implementation of <see cref="T:Castle.Facilities.NHibernateIntegration.ISessionFactoryResolver"/>
            that always queries the kernel instance for the session factory instance.
            <para>
            This gives a chance to developers replace the session factory instance 
            during the application lifetime.
            </para>
            </summary>
            <remarks>
            Inspired on Cuyahoga project
            </remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryResolver.#ctor(Castle.MicroKernel.IKernel)">
            <summary>
            Constructs a SessionFactoryResolver
            </summary>
            <param name="kernel">
            Kernel instance supplied by the container itself
            </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryResolver.RegisterAliasComponentIdMapping(System.String,System.String)">
            <summary>
            Associated the alias with the component key
            </summary>
            <param name="alias">
            The alias associated with the session 
            factory on the configuration node
            </param>
            <param name="componentKey">
            The component key associated with 
            the session factory on the kernel
            </param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryResolver.GetSessionFactory(System.String)">
            <summary>
            Returns a session factory instance associated with the
            specified alias.
            </summary>
            <param name="alias">
            The alias associated with the session 
            factory on the configuration node
            </param>
            <returns>A session factory instance</returns>
            <exception cref="T:Castle.MicroKernel.Facilities.FacilityException">
            If the alias is not associated with a session factory
            </exception>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.SessionStores.WebSessionStore">
            <summary>
            Provides an implementation of <see cref="T:Castle.Facilities.NHibernateIntegration.ISessionStore"/>
            which relies on <c>HttpContext</c>. Suitable for web projects.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.WebSessionStore.GetDictionary">
            <summary>
            Gets the dictionary.
            </summary>
            <returns></returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.WebSessionStore.StoreDictionary(System.Collections.IDictionary)">
            <summary>
            Stores the dictionary.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.WebSessionStore.GetStatelessSessionDictionary">
            <summary>
            Gets the IStatelessSession dictionary.
            </summary>
            <returns>A dictionary.</returns>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.SessionStores.WebSessionStore.StoreStatelessSessionDictionary(System.Collections.IDictionary)">
            <summary>
            Stores the IStatelessSession dictionary.
            </summary>
            <param name="dictionary">The dictionary.</param>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.Builders.XmlConfigurationBuilder">
            <summary>
            The configuration builder for NHibernate's own cfg.xml
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.Builders.XmlConfigurationBuilder.GetConfiguration(Castle.Core.Configuration.IConfiguration)">
            <summary>
            Returns the Configuration object for the given xml
            </summary>
            <param name="config"></param>
            <returns></returns>
        </member>
        <member name="T:Castle.Facilities.NHibernateIntegration.NHibernateFacility">
            <summary>
            Provides a basic level of integration with the NHibernate project
            </summary>
            <remarks>
            This facility allows components to gain access to the NHibernate's 
            objects:
            <list type="bullet">
              <item><description>NHibernate.Cfg.Configuration</description></item>
              <item><description>NHibernate.ISessionFactory</description></item>
            </list>
            <para>
            It also allow you to obtain the ISession instance 
            through the component <see cref="T:Castle.Facilities.NHibernateIntegration.ISessionManager"/>, which is 
            transaction aware and save you the burden of sharing session
            or using a singleton.
            </para>
            </remarks>
            <example>The following sample illustrates how a component 
            can access the session.
            <code>
            public class MyDao
            {
              private ISessionManager sessionManager;
            
              public MyDao(ISessionManager sessionManager)
              {
                this.sessionManager = sessionManager;
              } 
              
              public void Save(Data data)
              {
                using(ISession session = sessionManager.OpenSession())
                {
                  session.Save(data);
                }
              }
            }
            </code>
            </example>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.#ctor(Castle.Facilities.NHibernateIntegration.IConfigurationBuilder)">
            <summary>
            Instantiates the facility with the specified configuration builder.
            </summary>
            <param name="configurationBuilder"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.#ctor">
            <summary>
            Initializes a new instance of the <see cref="T:Castle.Facilities.NHibernateIntegration.NHibernateFacility"/> class.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.Init">
            <summary>
            The custom initialization for the Facility.
            </summary>
            <remarks>It must be overriden.</remarks>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.RegisterComponents">
            <summary>
            Registers the session factory resolver, the session store, the session manager and the transaction manager.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.RegisterDefaultConfigurationBuilder">
            <summary>
            Register <see cref="T:Castle.Facilities.NHibernateIntegration.IConfigurationBuilder"/> the default ConfigurationBuilder or (if present) the one 
            specified via "configurationBuilder" attribute.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.RegisterSessionFactoryResolver">
            <summary>
            Registers <see cref="T:Castle.Facilities.NHibernateIntegration.Internal.SessionFactoryResolver"/> as the session factory resolver.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.RegisterSessionStore">
            <summary>
            Registers the configured session store.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.RegisterSessionManager">
            <summary>
            Registers <see cref="T:Castle.Facilities.NHibernateIntegration.DefaultSessionManager"/> as the session manager.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.RegisterTransactionManager">
            <summary>
            Registers <see cref="T:Castle.Services.Transaction.DefaultTransactionManager"/> as the transaction manager.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.ConfigureFacility">
            <summary>
            Configures the facility.
            </summary>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.ConfigureReflectionOptimizer(Castle.Core.Configuration.IConfiguration)">
            <summary>
            Reads the attribute <c>useReflectionOptimizer</c> and configure
            the reflection optimizer accordingly.
            </summary>
            <remarks>
            As reported on Jira (FACILITIES-39) the reflection optimizer
            slow things down. So by default it will be disabled. You
            can use the attribute <c>useReflectionOptimizer</c> to turn it
            on. 
            </remarks>
            <param name="config"></param>
        </member>
        <member name="M:Castle.Facilities.NHibernateIntegration.NHibernateFacility.ConfigureFactories(Castle.Core.Configuration.IConfiguration,Castle.Facilities.NHibernateIntegration.ISessionFactoryResolver,System.Boolean)">
            <summary>
            Configures the factories.
            </summary>
            <param name="config">The config.</param>
            <param name="sessionFactoryResolver">The session factory resolver.</param>
            <param name="firstFactory">if set to <c>true</c> [first factory].</param>
        </member>
        <member name="P:Castle.Facilities.NHibernateIntegration.NHibernateFacility.CustomConfigurationBuilder">
            <summary>
             Gets or sets the custom Configuration Builder Type.
            </summary>
        </member>
    </members>
</doc>
